【发布时间】:2014-07-11 02:49:48
【问题描述】:
如果我有一个密集的mousemove 处理程序
window.moveEventCounter = 0;
window.addEventHandler("mousemove", function(e) {
for (var i = 0; i < 100; i++) {
console.log(i);
}
window.moveEventCounter++;
});
当为相同(或类似)鼠标操作注册快速事件处理程序时,处理的 mousemove 事件计数少于事件计数。
我认为这是浏览器引擎很聪明,不会在执行繁重的情况下过度填充事件队列,但这不是我的预期。
浏览器丢弃(或不发出)mousemove 事件的策略是什么? (在 Firefox 30 上观察到此行为)
【问题讨论】:
-
你怎么能注意到一个事件被“丢弃”了?如果不是某些事件被丢弃,而是发出的事件更少,该怎么办?
-
我比较了两种情况下相同鼠标操作后的事件计数。我确实感觉“发出”或分派的事件更少了——但在这种情况下,限制它的是与 Firefox 的交互性。
标签: javascript events mousemove