W przypadku korzystania z jQuery do podłączenia modułu obsługi zdarzeń istnieje różnica między używaniem metody click
$().click(fn)
w porównaniu z metodą bind
$().bind('click',fn);
Inny niż opcjonalny parametr danych wiązania.
javascript
jquery
event-handling
Alan Storm
źródło
źródło
Odpowiedzi:
Za co warto, ze źródła jQuery :
Więc nie, nie ma różnicy -
wezwania
źródło
click()
jest w zasadzie skrótem odbind('click')
(lub, w dzisiejszych czasach, faktycznie nazywa się to wiekiemon('click')
. Tak, jak ja to widzę, równie dobrze możesz zaoszczędzić sobie tego dodatkowego wywołania funkcji, używającon('click')
bezpośrednio.)+1 za odpowiedź Matthew, ale pomyślałem, że powinienem wspomnieć, że możesz również powiązać więcej niż jedną procedurę obsługi zdarzeń za jednym razem, używając
bind
co jest znacznie czystszym odpowiednikiem:
źródło
Jest jedna różnica polegająca na tym, że zdarzenia niestandardowe można wiązać przy użyciu drugiego posiadanego formularza. W przeciwnym razie wydają się być synonimami. Zobacz: jQuery Event Docs
źródło
Istnieje parametr [data] wiązania, który pojawi się tylko raz w czasie wiązania.
Możesz również określić zdarzenia niestandardowe jako pierwszy parametr bind.
źródło
Uważam, że .click () jest o wiele bardziej logiczne, ale wydaje mi się, że tak właśnie myślisz.
Wydaje się być tak proste, jak to tylko możliwe.
źródło
Jeśli masz Google Chrome, ich narzędzia programistyczne mają narzędzie do nasłuchiwania zdarzeń, wybierz element, który chcesz śledzić jego zdarzenie.
Przekonasz się, że wypróbowanie obu sposobów prowadzi do tego samego wyniku, więc są one równoważne.
źródło
Preferuję .bind () ze względu na jego spójność interfejsu z .live () . Nie tylko sprawia, że kod jest bardziej czytelny, ale także ułatwia zmianę wiersza kodu tak, aby używał jednej metody zamiast drugiej.
źródło