Zastanawiasz się, czy ktoś wymyślił lepszy sposób obsługi kliknięcia poza div podczas korzystania z Ember? Znam sposób jQuery za pomocą globalnego modułu obsługi kliknięć, który należy określić dla każdej akcji, ale mam nadzieję, że ktoś wymyślił sposób, aby zadeklarować to w widoku Ember. Jak dobrze, spróbowałem, żeby dać div indeks tabulacji i użyć rozmycia, ale działania Ember nie pozwalają na to.Ember - obsługa kliknięć poza widokiem
Odpowiedz
Dzięki za wejście. Powróciłem i ponownie przeczytałem dokumentację jQuerys .on
. Nie wiedziałem, że możesz nazwać to wydarzenie. Więc wziąłem oba komentarze i połączyłem je z czymś takim.
didInsertElement: function() {
Ember.run.next(this, 'attachClickHandler');
},
attachClickHandler: function(){
var temp = this;
$(window).on("click." + temp.elementId, function (e){
//...event here
});
},
detachClickHandler: function(){
$(window).off("click." + this.elementId);
},
Pozwala to na określenie zdarzenia dla każdej instancji widoku, co było tym, czego oczekiwałem. Dzięki chłopaki!
Zakładam, że 'detachClickHandler()' jest wywoływane z haka 'willDestroyElement' widoku? – Zaki
Nie wiedziałem o wyświetlaniu nazw wydarzeń :) –
można znaleźć ClickElsewhereMixin przydatnych
prostu zawierać wstawek na którykolwiek ze składników i wdrożenie onClickElsewhere()
- 1. Obsługa danych Ember 401's
- 2. Widok przeciągnij i upuść poza widokiem Recycler
- 3. Obsługa kontrolera widoku z dziedziczonym widokiem
- 4. Android MotionEvent: sprawdź, czy ruch wystąpił poza widokiem.
- 5. Ember związany bloków Ember
- 6. Obsługa błędów za pomocą domyślnego adaptera JSON-API Ember Data
- 7. Obsługa zdarzeń w konstruktorze zachowuje się inaczej niż obsługa zdarzeń poza konstruktorem
- 8. Ember Ember-views.render-double-zmodyfikować
- 9. Obsługa kliknięć JavaScript nie działa zgodnie z oczekiwaniami wewnątrz pętli for
- 10. Dlaczego moja obsługa kliknięć jQuery wydaje się uruchamiana wiele razy w przypadku niektórych jej celów?
- 11. Podklasy UIButton do obsługi kliknięć
- 12. Programowalne widoki kliknięć w Androidzie
- 13. JavaScript - Jak zaprogramować licznik kliknięć?
- 14. JavaScript kliknięć, Kurki i Hovers
- 15. Jakie są różnice między widokiem snapshot a widokiem dynamicznym?
- 16. Eclipse: Różnica między widokiem "Zadania" a widokiem "Listy zadań"
- 17. Ember: obniżenie ember z instalacją altanki
- 18. Ember, Ember Data i MongoDB _id
- 19. Ember ember-views.render-double-modyfikacja przestarzałości
- 20. FirebaseRecyclerAdapter z pustym widokiem
- 21. Przyciski nad widokiem mapy
- 22. wybierz rozwijane z ember
- 23. Wykonaj przewijanie UIView z UITableView, ale od góry do góry poza widokiem
- 24. Get Ember Widok z obiektu jQuery
- 25. Usuń widok po stuknięciu poza
- 26. Android pływające przyciski nad widokiem
- 27. Dodawanie Activity Indicator programowo widokiem
- 28. Obsługa kwantyfikatora Z3
- 29. ng-kliknij na rodzic kliknięć przez dzieci
- 30. jQuery: Śledzenie kliknięć za pomocą PHP
Nie rozumiem, na czym polega problem. Możesz delegować wydarzenie na podstawie wyrażenia regularnego, co nie wymaga niczego szalonego. Nawet przeglądając dokumentację Ember.js stwierdza, że wykorzystanie metody '.on()' jQuery jest podejściem, którego używają do rozwiązywania problemów delegacji wzdłuż dużych podzbiorów elementów, zagnieżdżonych lub nie. – Ohgodwhy
Możesz użyć zdarzenie ['didInsertElement'] (http://stackoverflow.com/questions/11377215/can-i-give-the-view-a-show-up-animation-in-emberjs/11377899#11377899) aby uruchomić wtyczkę i takie rzeczy. I powinieneś użyć ['willDestroyElement'] (http://emberjs.com/api/classes/Ember.View.html#event_willDestroyElement), aby usunąć powiązania. Alternatywnie możesz użyć ['Wyświetl # na '] (http://emberjs.com/api/classes/Ember.View.html#method_on). – MilkyWayJoe