Pergunta

Deixe -me explicar meu problema. Eu tenho um evento do MouseOut atribuído a uma tag div com um ID do calendário. Agora, quando esse manipulador é chamado (quando o mouse não está acima do calendário Div), quero esperar 2 segundos, então veja se o mouse ainda não está acima do calendário Div. Se o mouse eu ainda sair, faça uma função, se não, então não faça nada.

Eu uso a biblioteca JavaScript do protótipo. Meu código é o seguinte:

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

Obrigado

Foi útil?

Solução

$('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);
});
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top