Groups | Search | Server Info | Keyboard shortcuts | Login | Register
Groups > de.comp.lang.javascript > #4724
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
|---|---|
| Newsgroups | de.comp.lang.javascript |
| Subject | Re: addEventListener funktioniert nicht wie gedacht |
| Date | 2015-09-26 13:52 +0200 |
| Organization | PointedEars Software (PES) |
| Message-ID | <2967652.pP7tlEX89l@PointedEars.de> (permalink) |
| References | <mu5h99.4n0.1@mid.maikkoenig.de> <mu5o4o.1bk.1@stefan.msgid.phost.de> |
Stefan Reuther wrote: > Dem geübten Blick fällt auf, dass der Unterschied ist, dass bei den > funktionierenden Events ein Funktionsname steht, bei den nicht > funktionierenden ein Funktionsaufruf. Es muss immer etwas aufrufbares > stehen, also ein Funktionsname oder eine Closure. Korrekt ist „ein Funktionsausdruck“ (“function expression”); nicht „eine Closure“. <http://www.ecma-international.org/ecma-262/6.0/index.html#sec-types-of-source-code> <https://en.wikipedia.org/wiki/Closure_(computer_programming)#Anonymous_functions> | The term /closure/ is often mistakenly used to mean anonymous function | (<https://en.wikipedia.org/wiki/Anonymous_function>). Vgl. [falsch] <https://de.wikipedia.org/wiki/Closure_(Funktion)>: | Eine Closure (oder Funktionsabschluss) ist ein Begriff aus der | Programmierung. Er beschreibt eine anonyme Funktion, die Zugriffe auf | ihren Erstellungskontext enthält. | [sic] > […] Außerdem sieht der Event-Listener das Objekt, an dem er hängt, als > 'this', folglich musst du den nicht ausdrücklich durchreichen. Das ist jedoch (leider) bisher nur ein Quasi-Standard, also formal nur für Event-Listener sicher, die über abwärtskompatible Event-Handler und Event- Handler-Attribute hinzugefügt wurden. Standardkonform muss auf die currentTarget-Eigenschaft des Event-Objekts zugegriffen werden. Ein Wrapper wird daher einen Algorithmus verwenden, der funktional identisch zu folgendem Ausdruck ist, wobei e die Referenz zum Event-Objekt sei: (e ? e.currentTarget || e.target : this) || window.event.srcElement <http://www.w3.org/TR/2000/REC-DOM-Level-2-Events-20001113/events.html#Events-EventListener> <http://www.w3.org/TR/2015/WD-dom-20150618/#concept-event-listener-invoke> > Und schlussendlich sei noch an die CSS-Pseudoklasse :focus erinnert: um > nur am CSS-Stil rumzufummeln, braucht's kein JavaScript. ACK. -- PointedEars FAQ: <http://PointedEars.de/faq> | SVN: <http://PointedEars.de/wsvn/> Twitter: @PointedEars2 | ES Matrix: <http://PointedEars.de/es-matrix> Please do not cc me. / Bitte keine Kopien per E-Mail.
Back to de.comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar
addEventListener funktioniert nicht wie gedacht Maik Koenig <usenetspam@maikkoenig.de> - 2015-09-26 07:25 +0200
Re: addEventListener funktioniert nicht wie gedacht Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-09-26 09:12 +0200
Re: addEventListener funktioniert nicht wie gedacht Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-09-26 09:13 +0200
Re: addEventListener funktioniert nicht wie gedacht Maik Koenig <usenetspam@maikkoenig.de> - 2015-09-26 18:58 +0200
Re: addEventListener funktioniert nicht wie gedacht Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-09-26 09:16 +0200
Re: addEventListener funktioniert nicht wie gedacht Stefan Reuther <stefan.news@arcor.de> - 2015-09-26 09:22 +0200
Re: addEventListener funktioniert nicht wie gedacht Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2015-09-26 13:52 +0200
Re: addEventListener funktioniert nicht wie gedacht Maik Koenig <usenetspam@maikkoenig.de> - 2015-09-26 18:49 +0200
csiph-web