2016-12-26 87 views
-1

連續我想創建一個函數,在我將鼠標懸停後運行幾秒鐘,如'update'函數。如何在懸停時保持運行?

但是我沒有找到辦法在盤旋時連續運行。

請讓我知道,如果你知道如何做到這一點。

+0

使用'.mouseenter()' – ab29007

+1

使用'setTimeout'幾秒後運行一些東西。 – Barmar

+0

我認爲你需要提供更多的信息/一個具體的例子。 –

回答

2

jQuery讓我想嘔吐,所以,是啊..原生JS結合這一點;

(在文章底部點擊藍色的 「運行代碼片斷」 按鈕,將鼠標懸停在 「懸停我」 按鈕)

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

我想你是問如何在事件發生後的幾秒鐘觸發行爲。您可以使用delay函數在jQuery中執行此操作,例如

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

要使用的mouseenter它會是這樣的

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