Länge von childNodes
Andreas
- javascript
Ich habe eine Liste mit 2 Einträgen, wenn ich mir die Länge von li.childNodes in Firefox ausgeben lasse erhalte ich 5 im IE aber nur 2. Im Firefox DOM Inspector sind zwischen den Einträgen immer noch Textknoten zusehen, die da anscheinend mitgezählt werde. Das ganze ist ziemlich blöd wenn man mit li.childNodes[3] auf ein Objekt zugreifen will, da es ja im FF vorhanden ist und im IE nicht. Kennt jemand das Problem und weiß wie man es umgehen kann.
Ich habe eine Liste mit 2 Einträgen, wenn ich mir die Länge von li.childNodes in Firefox ausgeben lasse erhalte ich 5 im IE aber nur 2. Im Firefox DOM Inspector sind zwischen den Einträgen immer noch Textknoten zusehen, die da anscheinend mitgezählt werde. Das ganze ist ziemlich blöd wenn man mit li.childNodes[3] auf ein Objekt zugreifen will, da es ja im FF vorhanden ist und im IE nicht. Kennt jemand das Problem und weiß wie man es umgehen kann.
Das ist normal. Du kannst Whitespace zwischen Elementen entfernen, um das "Problem" zu umgehen. Noch besser prüfst Du aber die Elemente im childNodes-Durchlauf, um mit ihnen weiter zu arbeiten.
Noch besser prüfst Du aber die Elemente im childNodes-Durchlauf, um mit ihnen weiter zu arbeiten.`
… wofür sich nodeType anbietet. Siehe Beispiel.
Live long and prosper,
Gunnar