我正在测试一个简短的脚本,该脚本应该注册是否按住鼠标按钮,但是在我测试的所有浏览器上,onmouseup 和 onmousedown 事件同时触发 - 当鼠标按钮未按下时。
这是一个例子:
var check = 0;
document.onmousedown = function() {
check++
}
document.onmouseup = function() {
check--
}
setInterval(function() {
if (check) {
console.log(check)
}
}, 1000 / 30);
当按住鼠标时,它应该在控制台中发送垃圾邮件“1”,但它不起作用。并使用此代码:
document.onmousedown = function() {
console.log('down');
}
document.onmouseup = function() {
console.log('up');
}
很容易看出,当鼠标被按下时没有触发任何事件,但是当鼠标被释放时这两个事件都会触发。我错过了什么?