Domanda

mi spiego il mio problema. Ho un evento mouseout assegnato a un tag div con un id di calendario. Ora, quando questo gestore viene chiamato (quando il mouse non si trova sopra il div di calendario), voglio aspettare 2 secondi, poi vedere se il mouse non è ancora sopra il div calendario. Se il mouse ho ancora fare poi fuori una funzione, se poi non fare nulla.

Io uso il prototipo libreria javascript. Il mio codice è il seguente:

$('calendar').observe('mouseout', function (event){ 
    setTimeout(/* call this event again */, 2000);
}

Grazie

È stato utile?

Soluzione

$('calendar').observe('mouseout', function(e) {
   myTimeout = setTimeout(function() { /* stuff to do after 2 secs */, 2000);
});

$('calendar').observe('mouseover', function(e) {
   if(myTimeout) window.clearTimeout(myTimeout);
});
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top