Avatar billede lund_dk Praktikant
28. marts 2007 - 11:08 Der er 14 kommentarer og
1 løsning

vis span i 10 sekunder

Jeg har et taq <span>tekst</span>
som jeg gerne vil, hvis jeg kalder en funktion, vises i 10 sekunder, hvorefter den skjuler sig igen..

But how?
Avatar billede thesurfer Nybegynder
28. marts 2007 - 11:19 #1
Eksempel:

<span id="hej" style="display:none">tekst</span>

<script type="text/JavaScript" language="JavaScript">
function visspan(visskjul)
{
s = document.getElementById("hej");
disp = "none";
if (visskjul == 0) disp = "none";
s.style.display = disp;
setTimeout("visspan(0)", 10000);
}
</script>

<a href="#" onclick="visspan(1);return false">vis span</a>
Avatar billede thesurfer Nybegynder
28. marts 2007 - 11:20 #2
Rettelse:

<span id="hej" style="display:none">tekst</span>

<script type="text/JavaScript" language="JavaScript">
function visspan(visskjul)
{
s = document.getElementById("hej");
disp = "";
if (visskjul == 0) disp = "none";
s.style.display = disp;
setTimeout("visspan(0)", 10000);
}
</script>

<a href="#" onclick="visspan(1);return false">vis span</a>
Avatar billede thesurfer Nybegynder
28. marts 2007 - 11:21 #3
Dammit.. en lille rettelse er på vej..
Avatar billede thesurfer Nybegynder
28. marts 2007 - 11:28 #4
Jeg kom lige i tanke om, at JavaScript bruger "!=" og ikke "<>".. :-)

<span id="hej" style="display:none">tekst</span>

<script type="text/JavaScript" language="JavaScript">
function visspan(visskjul)
{
s = document.getElementById("hej");
disp = "none";
if (visskjul != 0) disp = "";
s.style.display = disp;
if (visskjul != 0) setTimeout("visspan(0)", 1000 * 10);
}
</script>

<a href="#" onclick="visspan(1);return false">vis span</a>
Avatar billede thesurfer Nybegynder
28. marts 2007 - 11:30 #5
Denne linie kan du flytte som du vil:

<span id="hej" style="display:none">tekst</span>

Bare du har et id, som du bruger både i span-tag'et og i JavaScript-koden.

- Eksemplet er testet og virker, så jeg smider lige et svar.
Avatar billede lund_dk Praktikant
28. marts 2007 - 11:31 #6
Det virker jo efter bogen..
Tak for hurtigt svar :D
Avatar billede thesurfer Nybegynder
28. marts 2007 - 11:31 #7
Det var så lidt :-)
Avatar billede roenving Novice
28. marts 2007 - 11:32 #8
-- og koden kan da forkortes:

<script type="text/JavaScript" language="JavaScript">
function visspan(visskjul){
  s = document.getElementById("hej");
  s.style.display = visskjul ? "" : "none";
  if (visskjul) setTimeout("visspan(0)", 1000 * 10);
}
</script>

-- udnytter at 0 behandles som false, ike-0 som true !-)
Avatar billede lund_dk Praktikant
28. marts 2007 - 12:10 #9
Kan jeg ikke loade den med?

Jeg får fejl..


<script type="text/JavaScript">
window.onload = vismsg(1);return true;
</script>
Avatar billede lund_dk Praktikant
28. marts 2007 - 12:10 #10
<script type="text/JavaScript" language="JavaScript">
function vismsg(visskjul)
{
s = document.getElementById("msg");
disp = "none";
if (visskjul != 0) disp = "";
s.style.display = disp;
if (visskjul != 0) setTimeout("vismsg(0)", 1000 * 10);
}
</script>
Avatar billede roenving Novice
28. marts 2007 - 12:17 #11
Du skal sætte kaldet ind i en anonym funktion:

<script type="text/JavaScript">
window.onload = function(){vismsg(1)};
</script>
Avatar billede lund_dk Praktikant
28. marts 2007 - 12:26 #12
OK, perfekt..
men skal ville gerne liiige have en lille funktion mere på.

Viil gerne kunne skrive i funktionen, hvilke tekst der skal stå i min span der vises de 10 sekunder..

Således teksten skrives i javascriptet, og ikke nede i min span.
Avatar billede roenving Novice
28. marts 2007 - 12:37 #13
window.onload = function(){vismsg(1),'Ha, mig ser du kun i 10 sekunder !-)'};

<script type="text/JavaScript" language="JavaScript">
function visspan(visskjul,msg){
  s = document.getElementById("msg");
  s.style.display = visskjul ? "" : "none";
  s.firstChild.nodeValue = msg ? msg : "&nbsp;";
  if (visskjul) setTimeout("visspan(0)", 1000 * 10);
}
</script>
Avatar billede lund_dk Praktikant
28. marts 2007 - 13:39 #14
den giver mig en fejl om et object var ventet
Avatar billede roenving Novice
28. marts 2007 - 13:44 #15
Argh ...

window.onload = function(){vismsg(1,'Ha, mig ser du kun i 10 sekunder !-)');};
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