Ich schreibe einen Event-Dispatcher in JavaScript, und ich habe beschlossen, auf Standard-Js CustomEvent-Klasse basieren. Ich kann nicht herausfinden, wie erkennen wenn Ereignisausbreitung im Listener gestoppt wurde (über e.stopPropagation()). Soll ich lieber selbst eine Event-Objekt-Implementierung schreiben?Wie überprüft man, ob die Ereignisausbreitung gestoppt wurde?
Antwort
Soweit ich das beurteilen kann, gibt es keine Möglichkeit, sondern auf der Event.prototype.stopPropagation
Funktion auszuspionieren.
Haben Sie es versucht?
e.isPropagationStopped()
Oder
event.isPropagationStopped()
Ist dies eine jQuery-spezifische Funktion? Ich kann keine Informationen in MDN finden. – Olgierd
Nein, es ist ein Javascript-Ereignis. Schau es dir auf [W3C] an (http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/events.html#Events-Event-isPropagationStopped). – Koen
Dies funktioniert nur bei benutzerdefinierten Ereignissen, nicht bei regulären Ereignissen. – James
Die CustomEvent eine boolesche Eigenschaft haben defaultPrevented
wenn das Attribut cancelable
auf true und die preventDefault()
Methode wurde verwendet, das Ereignis festgelegt wurde.
var evt = new CustomEvent("custom", {cancelable : true});
console.log(evt.defaultPrevented);
evt.preventDefault();
console.log(evt.defaultPrevented);
Browser Support: Chrome 18, IE 9, Rand, Opera 11, Safari 5.
- 1. Wie überprüft man, ob LogWriter eingestellt wurde?
- 2. Wie überprüft man, ob WaitHandle gesetzt wurde?
- 3. Wie überprüft man, ob die Standardkonfiguration in CI3 geladen wurde?
- 4. MySQL Wie überprüft man, ob die Abfrage erfolgreich ausgeführt wurde?
- 5. Wie überprüft man, ob die XSLT-Anweisung ausgeführt wurde
- 6. Wie man überprüft, ob der Dalvik Cache geändert wurde
- 7. Wie überprüft man, ob re() in Python erfolgreich ersetzt wurde?
- 8. Wie überprüft man, ob ein neues Outlook-Kalenderereignis hinzugefügt wurde?
- 9. Wie überprüft man, ob Entität in Doctrine 2 geändert wurde?
- 10. Python Selenium: Wie überprüft man, ob der WebDriver beendet wurde()?
- 11. Wie überprüft man, ob ein Bild in js zwischengespeichert wurde?
- 12. Wie überprüft man, ob ein Objekt initialisiert wurde? Objective-C
- 13. Wie überprüft man, ob NSTimer bereits ungültig gemacht wurde
- 14. Wie überprüft man, ob in der Tabellenspalte Text angegeben wurde?
- 15. Wie überprüft man, ob ein Feld deklariert wurde oder nicht?
- 16. Wie überprüft man, ob die Schnittstelle ist
- 17. Wie überprüft man, ob ein Python-Modul importiert wurde?
- 18. Wie überprüft man, ob/welche Matplotlibre verwendet wurde
- 19. TCLAP: Wie überprüft man, ob ein optionales Kommandozeilenargument angegeben wurde?
- 20. PHPMailer - wie überprüft man, ob Adresse (n) hinzugefügt wurde
- 21. Wie überprüft man, ob eine "lateinit" -Variable initialisiert wurde?
- 22. Wie überprüft man, ob localhost
- 23. Wie erkennen, wenn die Maus gestoppt wurde
- 24. Wie kann man sicher feststellen, ob die Serverantwort von Node.js gestoppt wurde?
- 25. Wie überprüft man, ob Kontakt Bild hat?
- 26. Wie überprüft man, ob die Webseitenseite gescrollt wird?
- 27. Wie überprüft man, ob die Zeile in Eloquent gelöscht wird?
- 28. Wie überprüft man, ob die Übergabeschaltfläche die richtige Antwort enthält
- 29. Wie überprüft man, ob die Permutationen die gleiche Parität haben?
- 30. Wie überprüft man, welches Segment verwendet wurde
nicht sicher, was du meinst. Wenn die Übertragung gestoppt wurde, wird Ihr Listener niemals aufgerufen. – Bergi
@Bergi ist es gut, für Tests zu wissen. – mightyiam