$('#element').dblclick(function(e){
console.log("event");
});
當我以非常快的速度單擊該元素時,它會多次顯示該事件。但是我想讓用戶連續不斷地雙擊,可能會跳過它1秒,我該怎麼做?謝謝。如何避免連續雙擊?
$('#element').dblclick(function(e){
console.log("event");
});
當我以非常快的速度單擊該元素時,它會多次顯示該事件。但是我想讓用戶連續不斷地雙擊,可能會跳過它1秒,我該怎麼做?謝謝。如何避免連續雙擊?
我會使用doTimeout plugin,具體是去抖功能:http://benalman.com/code/projects/jquery-dotimeout/examples/debouncing/。嘗試我發佈的第二個鏈接的第一個示例。然後,只需將其修改爲雙擊而不是keyup
。
var click_allowed = true;
$('#element').dblclick(function(e){
if (!click_allowed) return;
console.log("event");
click_allowed = false;
window.setTimeout(function() {
click_allowed = true;
}, 1000);
}
var lastClick = 0;
$('#element').dblclick(function(e){
var time = (new Date()).getTime();
if(time > lastClick + 1000) {
lastClick = time;
console.log("event");
}
}
TRUE;和`假`必須寫成小寫。否則你會得到一個參考錯誤。 – jAndy 2010-12-05 15:48:59