.bind()或.click()更好地绑定click事件处理程序吗?

要向元素添加单击事件处理程序,是.bind('click')还是.click更好? 有什么区别? 任何表现方面?

没有区别。 在内部,只需click调用,然后bind也只是调用。 因此,对于非常小的速度提升,只需使用:

 $("#someId").on("click", function () { //Do stuff }); 

这是.click()方法的jQuery 1.7.2 源代码的相关部分:

 return arguments.length > 0 ? this.on(name, null, data, fn) : this.trigger(name); 

.bind()方法的来源 :

 return this.on(types, null, data, fn); 

如果你在1.7版以下使用jQuery …

请注意, .on()方法是在jQuery 1.7中引入的。 如果您使用的是旧版本, .click()将在内部调用.bind() 。 这是1.6.2中.click()的来源 :

 return arguments.length > 0 ? this.bind(name, data, fn) : this.trigger(name);