Al usar jQuery para conectar un controlador de eventos, ¿hay alguna diferencia entre usar el método de clic?
$().click(fn)
versus usar el método de vinculación
$().bind('click',fn);
Aparte del parámetro de datos opcional de bind.
javascript
jquery
event-handling
Alan Storm
fuente
fuente
Respuestas:
Por lo que vale, de la fuente jQuery :
Entonces no, no hay diferencia -
llamadas
fuente
click()
es básicamente una abreviatura debind('click')
(o, en este día, una época, en realidad llamaon('click')
. A mi modo de ver, también podría ahorrarse esa llamada de función adicional usandoon('click')
directamente.+1 para la respuesta de Matthew, pero pensé que debería mencionar que también puede vincular más de un controlador de eventos de una vez usando
bind
que es el equivalente mucho más limpio a:
fuente
Hay una diferencia en que puede vincular eventos personalizados utilizando el segundo formulario que tiene. De lo contrario, parecen ser sinónimos. Ver: jQuery Event Docs
fuente
Existe el parámetro [datos] de vinculación que se producirá solo en el momento de vinculación, una vez.
También puede especificar eventos personalizados como primer parámetro de enlace.
fuente
Creo que .click () es mucho más lógico, pero supongo que así es como piensas las cosas.
Parece ser tan simple como parece.
fuente
Si tiene Google Chrome, sus herramientas de desarrollo tienen una herramienta de escucha de eventos, seleccione el elemento que desea espiar su evento.
Descubrirá que probar las dos formas conduce al mismo resultado, por lo que son equivalentes.
fuente
Prefiero .bind () debido a la coherencia de su interfaz con .live () . No solo hace que el código sea más legible, sino que también facilita el cambio de una línea de código para usar un método en lugar del otro.
fuente