javascript onmouseout na enkele seconde

Praat mee over van alles en nog wat!
Forumregels
Dit forum is voor alle zinnige gesprekken buiten phpBB om. Discussies en gesprekken over interessante onderwerpen.

Een nieuw onderwerp moet..:
  • uiteraard voldoen aan de algemene voorwaarden
  • niet passen in de gewone supportfora
  • interessante zijn voor het overgrote deel van onze gebruikers
  • een neutrale of positieve ondertoon hebben
  • anders zijn dan bestaande onderwerpen
Plaats reactie
sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

javascript onmouseout na enkele seconde

Bericht door sukkelaap » 23 mar 2006, 19:56

hoe kan je met javascript een scriptje maken dat zo werkt:

Met ONMOUSEOUT kan je een javascript in gang zetten. Dit moet alleen niet direct bij me onmouseout werken maar een seconde daarna.

Is dit mogelijk?

Zodat als je over een button gaat deze pas na een seconde terug springt naar zijn eerdere layout.

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20315
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Bericht door Paul » 23 mar 2006, 20:42

setTimeOut().
Daar kan het mee ;)

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 24 mar 2006, 00:36

Ok dit is gelukt.
Maar is het ook mogelijk om iets te maken dat deze functie niet meer wordt doorgevoerd wanneer je al over een ander button gaat met dat zelfde soort script erachter. Anders gaan er 2 dingen door elkaar.

Dus hoe kan je bij een nieuwe actie die timer stop zetten?

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 24 mar 2006, 00:50

Ook hier heb ik al oplossing voor, maar nog wel een ander foutje die ik hierbij heb gemaakt.

Dit is het script:

Code: Selecteer alles

function getPosOut()
{
   timer = setTimeout(\"getPos('".$bbn."')\",500); 
}
function getPosOutClear()
{
   clearTimeout(timer); 
}
- Bij mouseover van button wordt er iets in werking gebracht
- Bij mouseover wordt ook getPosOutClear()
- Bij mouseOUT wordt getPosOut() opgeroepen

Nu is het probleem dat wanneer je over een button gaat altijd de functie getPosOutClear() wordt uitgevoerd terwijl die niet altijd van toepassing is. Hierdoor ontstaat er een fout in het script. Is dit op te lossen? Is het te checken of de
timer = setTimeout(\"getPos('".$bbn."')\",500);
op dat moment in functie is?

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 29 mar 2006, 17:53

Dus hoe kan je ervoor zorgen dat de clear functie niet wordt gebruikt als timer niet is ingesteld?

ElbertF
Berichten: 5803
Lid geworden op: 12 okt 2004, 08:34
Contacteer:

Bericht door ElbertF » 29 mar 2006, 18:10

Gokje, moet dit niet werken?

Code: Selecteer alles

function getPosOut()
{
	timer = setTimeout(\"getPos('".$bbn."')\",500);
}
function getPosOutClear()
{
	if ( timer )
	{
		clearTimeout(timer);
		timer = false;
	}
}

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 29 mar 2006, 18:16

nee, dit had ik al geprobeerd. :wink:

ElbertF
Berichten: 5803
Lid geworden op: 12 okt 2004, 08:34
Contacteer:

Bericht door ElbertF » 29 mar 2006, 19:56

Probeer 't eens met:

if ( timer != undefined )

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 29 mar 2006, 20:05

nog steeds niet :(

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20315
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Bericht door Paul » 29 mar 2006, 20:10

Code: Selecteer alles

var timer = false;
function getPosOut()
{
   timer = setTimeout(\"getPos('".$bbn."')\",500);
}
function getPosOutClear()
{
   if ( timer )
   {
      clearTimeout(timer);
      timer = false;
   }
}
mischien? :)

sukkelaap
Berichten: 1345
Lid geworden op: 03 dec 2003, 19:09
Locatie: Zeist

Bericht door sukkelaap » 29 mar 2006, 20:13

Ja dit werkt, hartelijk bedankt ! :bier:

Plaats reactie