我有這個簡單的代碼,當你按下一個鍵時,它會淡入div。當我按兩次時,它會淡化兩次。有可能你可以用一兩條簡單的線來防止這種情況發生?如果淡入淡出不再褪色或者是什麼?如何:如果fadeIn不會褪色(jQuery)
代碼如下:
jQuery(document).bind('keydown', 's',function (evt){
$("#div1").fadeIn();
return false;
});
非常感謝。
我有這個簡單的代碼,當你按下一個鍵時,它會淡入div。當我按兩次時,它會淡化兩次。有可能你可以用一兩條簡單的線來防止這種情況發生?如果淡入淡出不再褪色或者是什麼?如何:如果fadeIn不會褪色(jQuery)
代碼如下:
jQuery(document).bind('keydown', 's',function (evt){
$("#div1").fadeIn();
return false;
});
非常感謝。
試試這個:
var isFading = false
jQuery(document).bind('keydown', 's',function (evt){
if(!isFading){
isFading = true;
$("#div1").fadeIn(400,function(){ isFading = false; });
return false;
}
});
不明白你的意思。你的代碼有效。假設div默認是隱藏的,當按下鍵時,div淡入淡出。如果再次按下鍵,它不會再次淡入,因爲它已經顯示,除非你正在刷新頁面。
嗯...我的腳本有1429行代碼...可能是其他地方的問題 – jQuerybeast 2011-04-13 03:53:14
是的,這絕對不是這個代碼導致的問題。 – Hussein 2011-04-13 03:54:43
非常感謝 – jQuerybeast 2011-04-13 03:54:43
而不是使用$.bind()
使用$.one()
。這會將您的處理程序綁定到事件,並在第一次運行後自動解除綁定。
http://api.jquery.com/one/
jQuery(document).one('keydown', 's',function (evt){
$("#div1").fadeIn();
return false;
});
它仍然刷新它 – jQuerybeast 2011-04-13 03:46:53
你有代碼的某個地方,我可以看到?我的意思是HTML? – ysrb 2011-04-13 03:54:18
非常感謝...發現問題歡呼 – jQuerybeast 2011-04-13 03:58:38