javascript - 减少鼠标悬停触发事件的数量

标签 javascript jquery

How can i decrease the number of mouse over triggered events? I still want to use mouse over but with less amount of event triggers.

$(clientFrameWindow.document.body).on("mouseover",function () {
//it should be 15 times slow down than now.
console.log(1);


});

我正在使用 jQuery。 任何帮助将不胜感激。

最佳答案

由于您必须body上使用监听器,根据您的评论,我建议您考虑诸如节流或去抖之类的方法。

阅读此内容以获取更多信息:https://css-tricks.com/the-difference-between-throttling-and-debouncing/

这是一个简单的限制实现:https://jsfiddle.net/jonathansampson/m7G64/

我还建议您消除 jQuery 在这方面的开销,只需执行一个 addEventListener('mouseover', function(){})

编辑:此外,由于您希望将其拖放到 body 上,我假设您的操作系统环境中,也许可以使用 mouseenter 事件而不是 鼠标悬停?肯定更便宜。

关于javascript - 减少鼠标悬停触发事件的数量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35976281/

相关文章:

javascript - 如何使用CSS选择器不排除span文本

javascript - 检测点击事件以防止自动完成列表关闭 jQuery

jquery - 使用宽度和高度百分比创建的嵌套 Div 无法按预期工作

Javascript setInterval 每 5 秒

javascript - 箭头函数语法 {()} 和 ({})

javascript - 显示带有 canvas 标签问题的图像

javascript - 在 JQuery 而不是 Javascript 中读取所选的 Dropbox 响应

javascript - underscorejs 其中运算符未按预期工作

javascript - 两个 cordova-plugin-device 插件

javascript - 为什么最后一个元素被称为 "remove"