0

我使用 JQuery,并且我有一组按钮,所有这些按钮都有 class btnClass。它们中的一些(或全部)根据一些变化的条件反复切换可见/不可见。

当单击这些按钮中的任何一个时,我想向单击事件添加回调。我有两个选择:

  1. 使用类选择器为所有这些静态和预先添加回调:$(".btnClass").on("click", function(e) { ... });
  2. 或者,当按钮切换为可见时,动态地单独添加回调:btn.toggle(true).on("click", function(e) { ... });

性能方面,哪个更好,为什么?有没有比这两种方法都更好的其他方法?

4

1 回答 1

3

性能方面,使用事件委托。与这些选项中的任何一个相比,它将具有更好的加载性能,因为单个处理程序仅在已知和现有的父元素上附加一次。

类似于.on()文档中提供的示例:

$("#wrapper").on("click", ".btnClass:visible", function(event){
  alert($(this).text());
});
于 2013-08-22T14:25:45.677 回答