Aloha ;)
Ich habe schon lange und erfolglos nach der Bedeutung von (e) geforscht! :D
Dachte immer, man könne Funktionen, auf die der EventListener verweist, keine Variablen mitgeben.
Deswegen habe ich mir diese Umstände bereitet! ;)
Ja - kann man auch nicht. Nur einen einzigen, den man aber nicht selbst belegen kann. Verpasst man einem Event-Handler einen (exakt einen) Parameter, so wird der automatisch mit dem gefeuerten Event-Objekt befüllt.
Ist e.srcElement.id dasselbe wie event.target.id?
Ja - ich hab dabei was gemacht, was ich normal nicht mache - ich habe alte Internet-Explorer-Spezialsyntax benutzt statt dem standardkonformen target. Weil ich neulich festgestellt habe, dass mindestens chrome alias webkit auch srcElement zusätzlich mitwirft - mit FF hab ichs leider nicht mehr getestet... Noch besser weil in allen Browsern lauffähig:
e = e || window.event;
var target = e.target || e.srcElement;
[...] target.id [...]
In Event-Handler sind folgende Variablen (in der Theorie) gleich belegt:
Standardkonform: this, e.target
, IE: e.srcElement
Leider weist auch this erst seit IE9 auf das richtige Element.
Da IE9 aber auf allen offiziell unterstützten windoofs lauffähig ist, kannst du dir den ganzen e-schmu sparen und einfach von vornherein this.id benutzen ;)
Ich gebe zu: Das war verwirrend. Deshalb nochmal ein schöner Überblick: JS 'this' and event handlers
Meine Darstellung im Post war da nämlich etwas verkürzt, denn zu 'headline' und 'text' gesellen sich als Parameter der addContentBox-Funktion auch noch 'name' und 'color', die dann gegebenenfalls an die addStackBox-Funktion weitergereicht werden, wenn der Inhalt auf dem Ablagehaufen landet (für die ganze headline ist in der kleinen Ablagebox nämlich kein Platz und im Gegensatz zur immer einfarbig weißen 'contentBox' muss die 'stackBox' auch irgendwoher wissen, welche Farbe sie annehmen soll - schwarz für Seitenfunktionen, grün für Öffentliches Recht, blau für Privarrecht oder Rot für Strafrecht).
Umso mehr Grund, alle relevanten Daten in irgendeiner Form zentral zu hinterlegen ;)
LOL - alleine die Vorstellung von 2385 Zeilen
Deshalb ja die absolute Notwendigkeit, so weit wie möglich abstrakte Prozesse mit zentral hinterlegten Daten zu füttern und keine Individuallösung für jedes zu machen ;)
Grüße,
RIDER
Camping_RIDER a.k.a. Riders Flame a.k.a. Janosch Zoller
ch:? rl:| br:> n4:? ie:% mo:| va:) js:) de:> zu:) fl:( ss:| ls:[