javascript - 哪种方式效率高?

标签 javascript jquery html jquery-selectors

我在页面上有 500 多个按钮。

<button class="btn-x">test</button>

jQuery:

// #1
$('button[class*="btn-x"]').live('click', function() { }});

// #2
$('.btn-x').live('click', function() { }});

现在哪个调用效率高,直接按类调用还是按按钮[attr*],我想知道,因为当我有超过 500 个按钮时,它可能会在以后引起问题,但我不确定它们是否会影响相同的结果.

最佳答案

类选择器将快一个数量级。

也就是说,live() 已被弃用。您应该使用 delegate() 或者如果您使用 jQuery 1.7+ on()`。

例如:

// < jQ 1.7
$('#staticParent').delegate('.btn-x', 'click', function() { });

// jQ 1.7+
$('#staticParent').on('click', '.btn-x', function() { });

关于javascript - 哪种方式效率高?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13563240/

相关文章:

jquery - 在带有图标 : no space between the icon and text? 的 Jquery 按钮中

javascript - jQuery eq() 超出范围

javascript - 如何在 innerHTML 内联 css 场景中使用 Javascript?

javascript - 区分 iPad 和 .来自网络应用程序内部的 iPhone?

javascript - 我在 EcmaScript 规范中读到某些方法是 "generic"。这是什么意思?

javascript - SetInterval 仅运行一次

html - 如何删除绝对 block 内的额外填充或边距?

html - 如何使用 Tailwind CSS 在列中自动放置新元素?

javascript - 这是 javascript 闭包的示例吗

javascript - 在 Jasmine 1.3 中添加自定义匹配器 - 显示未定义