2016-12-26 3 views
-1

Kontinuierlich möchte ich eine Funktion erstellen, die ein paar Sekunden, nachdem ich meine Maus schweben, wie "Update" -Funktion ausgeführt wird.Wie läuft man weiter, wenn man schwebt?

Aber ich habe keine Möglichkeit gefunden, kontinuierlich zu laufen, wenn ich schwebe.

Bitte lassen Sie mich wissen, wenn Sie wissen, wie es geht.

+0

Verwendung '.mouseenter()' – ab29007

+1

Verwenden 'setTimeout', um einige Sekunden später etwas auszuführen. – Barmar

+0

Ich denke, dass Sie mehr Informationen/ein konkretes Beispiel liefern müssen. –

Antwort

2

JQuery würde macht mich kotzen möchte, so, yeah .. nativer JS;

(Klicken Sie auf den blauen "run-Code-Snippet" -Button am unteren Rand des Pfostens und schweben die "schweben", um den)

var hover; 
 
btn.addEventListener('pointerover', function(evt){ 
 
    // We have started hovering the btn, start interval. 
 
    hover = setInterval(function(){ 
 
     //every 1000 MS, add another "Hi" to the debug div. 
 
     debug.innerHTML += "Hi "; 
 
    }, 1000); 
 
    
 
}); 
 

 
btn.addEventListener('pointerout', function(evt){ 
 
    //Leaving & stopped hovering the btn, stop interval. 
 
    clearInterval(hover); 
 
});
<button id="btn">Hover Me</button> 
 
<div id="debug"></div>

1

Ich denke, Sie fragen, wie ein Verhalten ein paar Sekunden nach einem Ereignis ausgelöst wird. Sie können dies in jQuery mit der delay-Funktion tun, z.

$("#foo").slideUp(300).delay(800).fadeIn(400); 

So kombinieren Sie diese mit MouseEnter- es so etwas wie

$("#foo").mouseenter(function(){ 
    $("#foo").slideUp(300).delay(800).fadeIn(400); 
});