mmofacts.com

DOM und Nicht- DOM Attribute

gepostet vor 19 Jahre, 10 Monate von schokofreak
Es gibt viele HTML Attribute, welche im DOM nicht vorhanden sind.
Als beispiele zu nennen sind hier z.B. das type Attribut bei Input Feldern.

 

Mit der fatalen konsequenz, dass es z.B. unmöglich ist, über DOM korrekte Formulare zu generieren. Denn: IE und Opera halten sich an den W3C standard, und verbieten ein verändern von solchen "Nicht DOM Kompatiblen" Attributen. FF hingegen lässt dies einfach so zu.

Was soll man tun?
Das ziel ist ja, dass man möglichst korrektes, W3C Konformes DHTML schreibt, welches auch funktioniert?

Der Trick ist ganz einfach (allerdings undokumentiert). Erstellt man nicht verknüpfte objekte (Sprich Objekte, welche nirgends mit appendChild hinzugefügt wurden, und keine unterobjekte selbst haben), so kann man im DOM die ReadOnly Attribute dennoch mit einem initialwert belegen.

Was so viel bedeutet wie:

Das geht ned:
 

var inp.document.createElement("input");
document.appendChild(inp) / inp.appendChild(whatever)
inp.setAttrribute("type", "submit"); //geht ned! Type ist ReadOnly für DOM


Das geht:
 

var inp.document.createElement("input");
inp.setAttrribute("type", "submit"); //geht ned! Type ist ReadOnly für DOM
document.appendChild(inp) / inp.appendChild(whatever)


Gruss

PS: Ihr merkt... die letzten Tage war ich vermehrt mit Themen präsent... mir stinkt es wie GN z.Zt. läuft, und es würde mich freuen wenn wieder mehr leben in die Bude kommt.

Auf diese Diskussion antworten