.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);