要向元素添加单击事件处理程序,是.bind('click')或.click更好?有什么区别?任何表现方面?
没有区别.在内部,click只是呼叫on,bind也只是呼叫on.因此,对于非常小的速度增加,只需使用on:
$("#someId").on("click", function () {
//Do stuff
});
Run Code Online (Sandbox Code Playgroud)
以下是该.click()方法的jQuery 1.7.2 源代码的相关部分:
return arguments.length > 0 ? this.on(name, null, data, fn) : this.trigger(name);
Run Code Online (Sandbox Code Playgroud)
return this.on(types, null, data, fn);
Run Code Online (Sandbox Code Playgroud)
如果你在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);
Run Code Online (Sandbox Code Playgroud)