事件处理程序绑定到匿名函数与命名函数



我知道.on()与jQuery一起存在,考虑到我的jQuery版本大于或等于1.7,将来不应该使用.bind()

我想知道的是:使用.bind()将匿名函数或命名函数附加到事件处理程序之间有什么区别吗?

示例:

// Anonymous function
$(".warning").bind("click", function(){
   alert("Hello");
});
// Named function
$(".warning").bind("click", foo);
function foo(){
   alert("Hello");
}

想象一下,我的页面中有100个div,类为warning。函数.bind()将为每个具有匿名函数的处理程序附加一个新函数,但它与JavaScript和jQuery内部的命名函数完全相同吗?

谢谢。

不会有任何明显的性能差异。

一个主要区别是,使用命名函数,您还可以选择性地取消绑定函数,而不仅仅是与事件类型相关的所有函数。

当然,这也可以帮助您避免代码重复。

相关内容

  • 没有找到相关文章

最新更新