将jQuery事件绑定到元素的最佳方法是什么?

我目前正在开发一个拥有成千上万行jQuery代码的网站,特别是有很多点击事件,我想知道是否有一个更具有性能意识的最佳实践,用于绑定点击事件或任何事件到一个物品.

当然,在各种链接和项目上有30个点击事件不能很好地进行注册.正在使用新的jQuery 1.7“on”函数,或许应该将事件绑定到body元素或其他东西然后检查将获得项目被点击然后从那里工作?或者它是一个非问题,绑定很多事件并不是现代浏览器或性能的问题?

最佳答案
您应该将元素绑定到包含所有单击元素的最低dom元素.

因此,如果有一个名为foo的div包含每个元素,你会说:

$("#foo").on("click", "yourselector", function(){
});

如果您的元素分布在页面的每一寸,那么您就会在最顶层收听:

$(document).on("click", "yourselector", function(){
});

如果我正确地理解你的问题,我真的希望以前的开发人员没有这样做:

$("#someButtonId").on("click", function(){
    //this defeats the whole purpose of on!!!
});

转载注明原文:将jQuery事件绑定到元素的最佳方法是什么? - 代码日志