我在學習Javascript。我注意到,如果我多次點擊一個對象,很快就會有一些點擊被捕獲爲雙擊。只能以單擊方式捕獲JavaScript中的所有點擊?在Javascript中單擊是否可以處理雙擊?
感謝
我在學習Javascript。我注意到,如果我多次點擊一個對象,很快就會有一些點擊被捕獲爲雙擊。只能以單擊方式捕獲JavaScript中的所有點擊?在Javascript中單擊是否可以處理雙擊?
感謝
使用jQuery,您可以創建文檔上的雙擊事件處理程序,然後阻止默認行爲:
$(document).dblclick(function(e) {
e.preventDefault();
alert('Handler for .dblclick() called and ignored.');
});
我想先學習沒有任何庫的Javascript。 – fatcatz 2010-07-31 08:04:12
有兩種方法可以解決這個問題。
1)使用「return false;」雙擊事件聲明。 實施例:
<button id="your button id" onclick="yourfuntion()" ondblclick="return false;" >My Button</button>
2)禁用按鈕/對象在主功能的開始和在函數結束時再次啓用它。
實施例:
<button id="your button id" onclick="yourfuntion()">My Button</button>
<script>
function yourfuntion() { document.getElementById("your button id").disabled = true;
//your javascript code
document.getElementById("your button id").disabled = false;}
</script>
看那'mouseDown'事件而不是'click'事件。 – 2010-07-30 12:39:04
在IE上,如果我快速點擊鼠標左鍵兩次,事件是:onmousedown,onmouseup,onclick,onmouseup,ondblclick。 – fatcatz 2010-07-31 08:01:05
我需要捕獲:onmousedown,onmouseup,onclick,onmousedown,onmouseup,onclick。如果我禁用ondblclick然後我得到:onmousedown,onmouseup,onclick,onmouseup。 onmousedown缺失。 – fatcatz 2010-07-31 08:01:53