Dlaczego model zdarzeń jQuery nie obsługuje przechwytywania zdarzeń i obsługuje tylko propagację zdarzeń?Dlaczego model zdarzeń jQuery nie obsługuje przechwytywania zdarzeń i obsługuje tylko propagację zdarzeń
Odpowiedz
Ponieważ nie wszystkie przeglądarki obsługują przechwytywanie zdarzeń, szczególnie IE. Ponieważ jQuery ma być kompatybilny z różnymi przeglądarkami, nie może oferować przechwytywania zdarzeń (może być możliwe symulowanie przechwytywania zdarzeń, ale gdyby było to łatwe, jestem pewien, że by to zrobili).
To była pożądana funkcja jQuery 2, ale zespół główny był prawie przekonany, że umożliwienie przechwytywania zdarzeń mających taką samą pozycję w całym systemie zdarzeń jQuery spowodowałoby wiele problemów. Oryginalny bilet można znaleźć tutaj [1]. Zamknęli nawet bilet po kilku dyskusjach.
Co więcej, przeglądarki starsze niż IE8 i Opera 7.0 nie obsługują przechwytywania zdarzeń. Ponieważ głównym celem jQuery jest zapewnienie obsługi wielu przeglądarek, nie obsługuje ona przechwytywania zdarzeń.
Wygląda na to, że jQuery jest bardziej skoncentrowany na wykorzystaniu Delegacji Eventów, która opiera się na propagacji zdarzeń aż do drzewa DOM.
Cały punkt jquery 2.0 polega na zrzucaniu wsparcia dla starszych przeglądarek, więc starsze przeglądarki nie obsługujące przechwytywania zdarzeń nie powinny być blokerem przynajmniej dla jQuery 2. – Jens
- 1. JQuery UI; Zatrzymaj propagację zdarzeń do wyboru
- 2. Jak zatrzymać propagację zdarzeń hammer.js
- 3. IE10 nie obsługuje klikania zdarzeń | Pomoc przy użyciu MSPointer
- 4. Wiele instancji i zdarzeń dyrektywy
- 5. jQuery .trigger() wiele zdarzeń
- 6. jQuery nie obsługuje zdarzenia postmessage?
- 7. Konfiguracja IAdviseSink do przechwytywania zdarzeń dokumentu MSWorda
- 8. zdarzeń backbone.js i el
- 9. Powiąż wiele zdarzeń z metodą "żywych" jQuery
- 10. Jak zastąpić obsługę zdarzeń jquery
- 11. Kliknięcia powiązania zdarzeń z backbone.js i jQuery
- 12. jQuery Fullcalendar nie renderuje zdarzeń w IE
- 13. jQuery dane niestandardowe zdarzeń (subskrybuj i wyzwalacz)
- 14. Opóźnianie obsługi zdarzeń do momentu wystrzelenia zdarzeń
- 15. Minimalna biblioteka zdarzeń rozproszonych napowietrznych zdarzeń/framework?
- 16. Hierarchiczny model obiektowy z dziedziczeniem właściwości i propagowaniem zdarzeń?
- 17. Moduł obsługi zdarzeń multiselect jquery
- 18. Czy istnieje źródło zdarzeń jQuery?
- 19. Wiązanie wielu zdarzeń w jQuery
- 20. Wyłącz dziennik zdarzeń dla zdarzeń ActionCable
- 21. Odbiornik zdarzeń dla biblioteki dokumentów
- 22. Łańcuch zdarzeń i iteracji DOM
- 23. Usługa zdarzeń powiadomień systemu Windows i zdarzeń niestandardowych
- 24. Dlaczego symfony2 nie wywołuje moich detektorów zdarzeń?
- 25. Hermetyzacja zdarzeń z Enums
- 26. właściwości zdarzeń touchend
- 27. Dyspozytor i odbiornik zdarzeń Symfony2
- 28. Zdarzenia Java i detektory zdarzeń
- 29. Wysyłanie zdarzeń myszy i klawiatury
- 30. Przekazywanie danych zdarzeń do wbudowanych programów obsługi zdarzeń
http://censore.blogspot.in/2014/09/js-event-bubbling-vs-event-capturing.html – biplav
IMHO, jQuery 2.x Powinien on wspierać –
To bardzo zły powód, by nie wspierać czegoś. przynajmniej dać użytkownikowi możliwość wyboru. Wydaje mi się, że moc przestrzeni nazw jest bardzo wygodna dla jQuery, a nie dla rodzimego JS. – vsync