Avatar billede jriff Nybegynder
29. juli 2004 - 01:55 Der er 38 kommentarer

Blinkende tekst

Hej Alle!

Jeg har brug for at lave blinkende tekst på en side. Og stop med det samme med at kritisere blinkende tekst... Det er absolut nødvendigt i dette tilfælde ;-)

Jeg kan intet javascript, men jeg har fundet denne stump kode:

<script type="text/javascript">
        <!--
        function doBlink() {
        var b = document.all.tags("BLINK")
        for ( i=0; i < b.length; i++)b[i].style.visibility = (b[i].style.visibility
        == "" )? "hidden" : "" }
        function startBlink() {
        if (document.all)setInterval("doBlink()",800)}
        window.onload = startBlink;
        //-->
        </script>

Hvis så jeg skriver: <blink>Hejsa!</blink> så blinker teksten med et interval på 800 ms. Det er fint nok, men jeg ville meget gerne have at teksten blev vist i 800 ms og herefter slukkede i 200 ms for så at starte forfra. Altså en lidt mindre irriterende slags blink, som kun lige er nok til at henlede opmærksomheden på teksten.  Og nej! Det har ikke noget med reklamer eller spam at gøre.

Er der en af jer seje JS-folk der kan ændre koden, så den kan gøre ovenstående, eller har I noget nyt kode? Det skal lige siges at DIV-blokke ikke går i mit tilfælde.

På forhånd tak.
Avatar billede roenving Novice
29. juli 2004 - 01:58 #1
Hvadfor går div-blokke ikke, når du kan acceptere ikke-eksisterende tags som blink ?-)
Avatar billede jriff Nybegynder
29. juli 2004 - 02:00 #2
Fordi jeg har teksten stående i en celle... altså: <td>Jeg vil gerne blinke</td> Man kan da ikke bruge div-blokke i en celle, kan man?
Avatar billede roenving Novice
29. juli 2004 - 02:01 #3
Hvorfor ikke ?-)
Avatar billede jriff Nybegynder
29. juli 2004 - 02:01 #4
Ok... det kan man så - det troede jeg bare ikke. Men har du så noget kode til det?
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:03 #5
Roenving>>De eksisterer vel stadig, eller? Kan huske jeg syntes det så sejt ud for 5-6 år siden. Altså i NS.
Avatar billede jriff Nybegynder
29. juli 2004 - 02:04 #6
michael_stim> Det uderstøttes ikke af IE... og det er også den irriterende måde at blinke på! Man bliver helt ør i hovedet. Det er netop det jeg gerne vil undgå.
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:05 #7
Det ved jeg at det ikke gör, men de eksisterer vel stadig, eller?
Avatar billede roenving Novice
29. juli 2004 - 02:24 #8
-- tjah, eksisterer stadig ...

Hrmm, Netscape understøtter dem endnu, men man kan i hvert fald ikke basere webdesign på den slags ...
Avatar billede roenving Novice
29. juli 2004 - 02:25 #9
-- og se sejt ud ?????????????????
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:28 #10
Ja for 5-6 år siden. Dengang skulle der ikke så meget til för at det var sejt :D
IE har vel aldrig understöttet <blink>.
Avatar billede jriff Nybegynder
29. juli 2004 - 02:29 #11
I har altså ikke noget kode til at læse problemet?
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:29 #12
Nå nok om det, det var jo ikke det spörgsmålet gik ud på.
Natti
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:30 #13
roenving plejer nok at kunne ryste et eller andet ud af ärmet. Javascript er ikke min stärke side.
Avatar billede jriff Nybegynder
29. juli 2004 - 02:31 #14
Jammen jeg er lutter øren :-)
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 02:34 #15
Hvis du har en gammel browser kan du bruge <blink> ;-)

*LOL*
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 02:34 #16
Altså en gammel NS 4
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:37 #17
Hihi
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:42 #18
Stakkels jriff, han får kun spam og ingen hjälp. Nu vil jeg i hvert fald forlade tråden og lade jriff väre i fred, eftersom jeg ikke har noget at komme med. Håber du får löst dit problem.
//Michael
Avatar billede roenving Novice
29. juli 2004 - 02:42 #19
Computeren kunne ikke lige klare mine frustrationer, men den er mirakuløst overlevet, så lige et øjeblik ...
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 02:45 #20
Det var nu ikke for at spamme - Jeg er bare blevet så gammel at alt NS4 snakken gik over hovedet på mig ;-(
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 02:47 #21
<html>
<head>
    <title>Blink for fanden</title>     
<script type="text/javascript"> 
ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
ie5 =(document.getElementById)? true:false
ns6 = (document.getElementById && !document.all)?true:false;

function over(id){

var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = "visible";
status = false;
}

function ud(id){

var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = "hidden";
status = true;
}

var status = true;
var timer;

function bblink(){
    blinkda = (status)? over('lag'): ud('lag');
}

function init(){
    timer = setInterval(bblink,200);
}
</script>
</head>

<body>
<a href="#" onMouseover="over('lag')" onMouseout="ud('lag')">kuk</a>

<div id="lag" name="lag" style="position: relative;z-index: 3; visibility: hidden">Denne tekst vises n&aring;r der klikkes</div>
<br>
<input type="button" onclick="clearInterval(timer);" value="SÅ stop da">
<script type="text/javascript">
init();
</script>
</body>
</html>
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 02:48 #22
Så kan der blinkes ;-)
Avatar billede michael_stim Ekspert
29. juli 2004 - 02:51 #23
nikolajdu>>hentydede ikke til dig men til mig selv ;o)
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 02:56 #24
ok, men det fik mig da lige til at indse at jeg "kun" var 35 minutter for sent på min NS4 indskydelse.

Her en version med en table i stedet.

<html>
<head>
    <title>Blink for fanden</title>     
<script type="text/javascript">
var ns4 = (document.layers)? true:false
var ie4 = (document.all)? true:false
var ie5 =(document.getElementById)? true:false
var ns6 = (document.getElementById && !document.all)?true:false;
var status = true;
var timer;

function over(id){

var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = "visible";
status = false;
}

function ud(id){

var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = "hidden";
status = true;
}


function bblink(){
    blinkda = (status)? over('lag'): ud('lag');
}

function init(){
    timer = setInterval(bblink,200);
}

onload = init;

</script>
</head>

<body>
<table>
<tr>
<td>blink du </td>
<td id="lag" name="lag" style="position: relative;z-index: 3; visibility: hidden">Blink blink </td>
</tr>
</table>
<br>
<input type="button" onclick="clearInterval(timer);" value="SÅ stop da">

</body>
</html>
Avatar billede jriff Nybegynder
29. juli 2004 - 02:57 #25
nikolajdu> Jeg tror ikke helt at det stykke kode kan hjælpe... der kan ikke uafhængigt defineres tændt og slukket-tid.
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 02:59 #26
og en noget kortere version:

<html>
<head>
    <title>Blink for fanden</title>     
<script type="text/javascript">
var ns4 = (document.layers)? true:false
var ie4 = (document.all)? true:false
var ie5 =(document.getElementById)? true:false
var ns6 = (document.getElementById && !document.all)?true:false;
var status = "visible";
var timer;

function over(id){

var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = status;
status = (status == "visible")? "hidden" : "visible";
}

function bblink(){
    over('lag');
}

function init(){
    timer = setInterval(bblink,200);
}

onload = init;

</script>
</head>

<body>
<table>
<tr>
<td>blink du </td>
<td id="lag" name="lag" style="position: relative;z-index: 3; visibility: hidden">Blink blink </td>
</tr>
</table>
<br>
<input type="button" onclick="clearInterval(timer);" value="SÅ stop da">

</body>
</html>
Avatar billede roenving Novice
29. juli 2004 - 03:07 #27
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Tomt dokument</title>
<meta name="keywords" content="søgeord adskilt af komma">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
html,body{height:100%;margin:0px;border:0px;padding:0px;font-family:tahoma,verdana,arial,sans-serif;font-size:small;}
.blink{background:#fef;color:red;visibility:hidden;}
</style>
<script language="javascript" type="text/javascript">
function getElementsByClassName(c,t,e){
  switch(getElementsByClassName.arguments.length){
    case 0:
      return null;
    case 1:
      t = '*';
      e = document;
      break;
    case 2:
      e = document;
  }
  var r = new Array(),tags = e.getElementsByTagName(t);
  for(i=0;tags.length>i;i++){
    if(tags[i].className==c)r[r.length] = tags[i];
  }
  return (r.length>0)?r:null;
}
var start=0;
function startBlink(){
  start = ++start%5;
  var e = getElementsByClassName('blink');
  for(i=0;e.length>i;i++){
    e[i].style.visibility = (start != 0)?'visible':'hidden';
  }
  setTimeout('startBlink()',200);
}
</script>
</head>
<body onload="startBlink();">
<table>
  <tr>
    <td class="blink">
      Dette blinker
    </td>
    <td>
      Dette blinker ikke
    </td>
  </tr>
</table>
<span id="minSpan"></span>
</body>

</html>

-- nu fik jeg computeren til at køre igen, keyboardet skal nok udskiftes ...
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 03:09 #28
Sådan så.

<html>
<head>
    <title>Blink for fanden</title>     
<script type="text/javascript">
var ns4 = (document.layers)? true:false
var ie4 = (document.all)? true:false
var ie5 =(document.getElementById)? true:false
var ns6 = (document.getElementById && !document.all)?true:false;
var status = "visible";
var timer;

function over(id){

var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
styleObj.visibility = status;


status = (status == "visible")? "hidden" : "visible";
setTimer = (status == "visible")? 200 : 800;
clearTimeout(timer);
timer = setTimeout(bblink,setTimer);

}

function bblink(){
    over('lag');
}

function init(){
    timer = setTimeout(bblink,800);
}

onload = init;

</script>
</head>

<body>
<table>
<tr>
<td>blink du </td>
<td id="lag" name="lag" style="position: relative;z-index: 3; visibility: visible">Blink blink </td>
</tr>
</table>
<br>
<input type="button" onclick="clearInterval(timer);" value="SÅ stop da">

</body>
</html>
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 03:11 #29
Damn hm jes er 2 minutter hurtigere selv uden keyboard ;-)
Avatar billede roenving Novice
29. juli 2004 - 03:18 #30
*lol*
Avatar billede jriff Nybegynder
29. juli 2004 - 03:21 #31
Tudsind tak for jeres svar! Jeg kigger på det i morgen tidlig, for nu er min øjne ved at lukke helt af sig selv :-) Sov godt!
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 03:23 #32
Jeg gir ikke op. Nu endnu kortere.!

<script type="text/javascript">
var ns4 = ( document.layers ) ?true :false;
var DOM = ( document.getElementById ) ?true :false;
var ie4 = ( document.all && !DOM ) ?true :false;
var status = "visible";
var timer;

function over(id){
    var styleObj = (ns4)? document.layers[id] : (ie4)? document.all[id].style : document.getElementById(id).style;
    styleObj.visibility = status = (status == "visible")? "hidden" : "visible";
    timer = setTimeout(bblink,setTimer = (status == "visible")? 800: 200);
}

function bblink(){
    over('lag');
}

function init(){
    timer = setTimeout(bblink,800);
}

onload = init;

</script>
Avatar billede roenving Novice
29. juli 2004 - 03:30 #33
-- min er stadig krotere, men jeg har jo også vedlagt html-koden ...

-- men harnegligeret ie5- og ns4 !-)

-- hvilket vel også er sund fornuft !o]
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 03:30 #34
I øvrigt pudsigt at den markere "blink" som et reserveret ord på lige fod med setTimeout i min homesite.... Lettere skummelt ;-)
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 04:05 #35
Fandt ud af hvorfor den markere det som reservert ord. Ikke at det er det explicit i javascript, men det hører under : ECMA Core Objects, Methods & Properties (fandt bare ikke ud af hvilken version?)

String Object
properties - constructor, length, prototype
display methods - anchor(), big(), blink(), bold(), fixed(), fontcolor(), fontsize(), italics(), small(), strike(), sub(), sup()

Og kan i Mozilla, firefox, Opera og Netscape (har testet dem af) kaldes med blink();

<script type="text/javascript">
var b = "blink"
document.write(b.blink())
</script>

Og så må vi slet ikke glemme den ualmindeligt oversete <marquee> ;-)

God dag :))

/Nikolaj
Avatar billede jriff Nybegynder
29. juli 2004 - 10:09 #36
nikolajdu> Jeg har brugt din kode, og det virker rigtig fint! Men det er kun første instans hvor man bruger blink, der virker. Hvis man bruger en mere længere nede på siden så blinker den ikke?
Avatar billede nikolajdu Nybegynder
29. juli 2004 - 11:52 #37
Nej det er vel argumenten for at Roenving bruger CSS i stedet. Det bliver noget bavl at lave en liste med ID´er der skal blinke - Ihvertilfald hvis der er mere end et par stykker.
Avatar billede roenving Novice
30. juli 2004 - 00:20 #38
-- og en anelse udbygget:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Tomt dokument</title>
<meta name="keywords" content="søgeord adskilt af komma">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
html,body{height:100%;margin:0px;border:0px;padding:0px;font-family:tahoma,verdana,arial,sans-serif;font-size:small;}
.blink{visibility:hidden;}
.roed{background:#fef;color:red;}
.blaa{background:#efe;color:blue;}
</style>
<script language="javascript" type="text/javascript">
function getElementsByClassName(c,t,e){
  switch(getElementsByClassName.arguments.length){
    case 0:
      return null;
    case 1:
      t = '*';
      e = document;
      break;
    case 2:
      e = document;
  }
  var r = new Array(),tags = e.getElementsByTagName(t);
  for(i=0;tags.length>i;i++){
    if(tags[i].className.indexOf(c)>-1)r[r.length] = tags[i];
  }
  return (r.length>0)?r:null;
}
var start=0;
function startBlink(){
  start = ++start%5;
  var e = getElementsByClassName('blink');
  for(i=0;e.length>i;i++){
    e[i].style.visibility = (start != 0)?'visible':'hidden';
  }
  setTimeout('startBlink()',200);
}
</script>
</head>
<body onload="startBlink();">
<table>
  <tr>
    <td class="blink roed">
      Dette blinker
    </td>
    <td>
      Dette blinker ikke
    </td>
  </tr>
  <tr>
    <td class="blink blaa">
      Dette blinker
    </td>
    <td>
      Dette blinker ikke
    </td>
  </tr>
</table>
</body>

</html>
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester