jquery - 使用 on 或 by direct event 来应用事件之间是否存在性能差异

标签 jquery

这些天我正在研究一个 jquery 项目,我发现如果我使用像

这样的直接事件
$('.selector').click(function(){
});

将完美工作,但如果页面部分回发或动态内容,我必须使用 .on如下

$('body').on('click','.selector',function(){

});

现在我的问题是on既可以处理静态内容,也可以处理动态内容,所以为什么我不总是使用 on直接代替像 click 这样的静态事件。

.on 是否存在任何性能问题

最佳答案

Is there any performance issue with .on

.on 不存在性能问题。事实上,您的第一个示例只是以下内容的快捷方式:

$('.selector').on('click', function(){ 

正如你所说,不同之处在于使用 $('body').on 为尚未在 DOM 中的元素委托(delegate)事件,这自然需要浏览器进行更多工作。如果您需要对文档或正文进行委派,则使用该方式,否则使用其他方式。

关于jquery - 使用 on 或 by direct event 来应用事件之间是否存在性能差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17038260/

相关文章:

javascript - 如何使用带有 jQ​​uery 或 JavaScript 的按钮刷新变量

javascript - 在knockout js中动态改变一条线的颜色

jQuery animate += 和最新版本

javascript - 如何在一个页面中多次使用 particles.js?

javascript - 为什么我的模式不起作用? Bootstrap4

javascript - 如果安装了闪存

javascript - 您将如何处理不同格式的日期?

javascript - 使用 cookie 插件从图像点击触发复选框点击

javascript - 更改当前事件 div 内的 div 的 css(在页面加载时)

javascript - 文本区域有神秘的空白