2012-04-19 12 views

Respuesta

8

Si nos fijamos en el código jQuery se puede ver que todos click() hace es ejecutar 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); 
}; 

Nota esto:

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

En otras palabras, "Si no hay argumentos se pasan a click, ejecutar trigger('click') ".

+1

Puede valer la pena mencionar que este es el Procedimiento de operación estándar en el código fuente de jQuery, o en cualquier aplicación decente para ese asunto; si desea el mismo resultado, llame al mismo código. La diferencia de rendimiento entre uno y otro siempre será insignificante. – Blazemonger

Cuestiones relacionadas