我遇到了JQuery mouseout
函數和setTimeout
問題。帶有鼠標輸出功能的JQuery超時問題
我想實現的是,當我懸停一個元素時,它會改變背景。當我離開那個元素(所以mouseout被觸發)後,背景應該在1秒後回到原始狀態。
.mouseover(function(){
changeBackground();
})
.mouseout(function(){
//setTimeout(function() {
goBack();
//}, 1000);
});
但是,如果我去掉了超時功能(這是我想達到的目標),即使我:
如果我使用下面的代碼,goBack
功能只有當我離開這個元素稱爲不要離開那個元素,goBack
函數被調用。
任何幫助或建議,以避免這個問題?
我都嘗試之前超時,但問題仍然存在。如果我輸入或懸停一個元素並取消超時註釋,1秒後goBack被調用,即使我不離開 –
順便說一下,即使使用懸停功能,我也想暫停。這就像我試圖實施的評級系統,所以我想等一秒鐘後再回到保存的評級。 –
你可以在這裏嘗試你自己的代碼https://github.com/stestisa/star_rating,並看到問題仍然存在 –