在刚刚触发 mousedown 和 mouseup 事件后,jQuery 是否有可能阻止在同一元素上执行单击事件。
任何帮助/示例将不胜感激。
最佳答案
有一种笨拙的方法是在鼠标按下时禁用按钮,并在短时间(如 100 毫秒)后启用它。如果在此期间发生 mouseup,则不会触发点击。
$('#btn').on('click', function() {
alert('clicked')
});
$('#btn').on('mousedown', function() {
var btn = $(this);
btn.attr('disabled', 'disabled');
setTimeout(function() { btn.removeAttr('disabled'); }, 100);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<body>
<button id='btn'>Click me</button>
</body>
关于javascript - 在 mousedown 和 mouseup 事件后防止点击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10746650/