Hallo,
Jetzt meine Frage: darf ich an die HTML-Elemente beliebige selbstdefinierte Eigenschaften und Methoden hinzufügen, oder ist das Funktionieren nur ein Zufall? Sollten (müssten) das alle Standardkonformen Browser können?
Im Prinzip lässt sich jedes ECMAScript-Objekt durch neue Member erweitern (ich wüsst nicht, welches Objekt nicht bzw. was im Sinne von ECMAScript dagegen sprechen könnte). Ein ECMAScript-konformer Browser sollte das also erlauben. Einen JavaScript-Fehler sollte es zumindest keinesfalls ergeben, und falls ein Browser das Setzen der Eigenschaft ignoriert, kannst du diesen Fall einfach mit if (this.member) ... abfangen.
elementobjekt.neue_eigenschaft = "wert"; sollte also keine Probleme machen. Etwas anderes ist möglicherweise elementobjekt.setAttribute("neues_attribut", "wert");. Das wird ebenso oft benutzt und eignet sich natürlich nur für Strings. Ich weiß nicht, ob das im DOM erlaubt ist, jedenfalls sind da alle wichtigen Browser tolerant und setzen das Attribut, auch wenn es nicht Teil von HTML ist.
Mathias