jQuery触发器('click')和click()之间有什么区别
答
如果你看一下jQuery的代码,你可以看到,所有click()
所做的是执行trigger('click')
:
jQuery.each(("blur focus focusin focusout load resize scroll unload click dblclick " +
"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave " +
"change select submit keydown keypress keyup error contextmenu").split(" "), function(i, name) {
// Handle event binding
jQuery.fn[ name ] = function(data, fn) {
if (fn == null) {
fn = data;
data = null;
}
return arguments.length > 0 ?
this.on(name, null, data, fn) :
this.trigger(name);
};
注意这一点:
return arguments.length > 0 ?
this.on(name, null, data, fn) :
this.trigger(name);
换句话说,“如果没有参数传递给click
,执行trigger('click')
“。
+1
可能值得一提的是,这是jQuery源代码中的标准操作过程,或者是任何正常的应用程序 - 如果您想要相同的结果,请调用相同的代码。一方和另一方之间的表现差异总是微不足道的。 – Blazemonger 2012-04-19 14:18:08
没有任何。一个叫另一个。 – Blazemonger 2012-04-19 14:15:07