1

包含 jQuery on({}) 的上下文会使其更快吗?

例子:

$('body').on({
    click: function()
    {
        // blah 
    }
},'.myClass');

对比

$('body').on({
    click: function()
    {
        // blah 
    }
},'.myClass','#myWrapper');
4

2 回答 2

1

更快的选择是

$('#myWrapper').on({
    click: function()
    {
        // blah 
    }
},'.myClass');

这将比$('body').on(...)因为在此页面中发生的每次点击都会根据选择器进行评估,'.myClass'但是当您使用上述选项时,只会#myWrapper评估内部发生的点击

于 2013-08-16T06:53:22.140 回答
0

不,包括上下文on并不比 the.click和其他事件快。

as on 用于为那些动态创建的元素添加事件。并且 on 将从正文开始搜索所有元素。和其他事件将绑定在页面渲染上,这样会更快。

.on当您动态创建元素并希望在这些元素上提供一些事件时使用。

编辑:

你的语法.on不正确。应该是这样的:

$('body').on( "click", "#.myClass, #myWrapper", function(e) {
   //your code
}); 
于 2013-08-16T06:44:34.933 回答