Hallo,
ich möchte per Javascript auf einen div zugreifen, welches lediglich einen Klassennamen besitzt. Nachfolgenden Code möchte ich dafür verwenden:
var cssKnoten = document.getElementsByTagName("div")[0].getAttributeNode("class");
for each(var knoten in cssKnoten) {
if(knoten == "meinKlassenname") {
alert("Element gefunden");
var meinElement = knoten;
}
}
>
> Leider wird das alert nicht ausgegeben. Mein eigentliches Ziel ist es die Höhe des Elementes '`<div class="meinKlassenname">`{:.language-html}' zu verändern.
> Habe ich einen Denkfehler in der Schleife? Ist es mir überhaupt möglich auf ein div mit einen Klassennamen zuzugreifen?
> Ich weiß, dass man einfach per '`document.getElementById("id")`{:.language-javascript}' auf einen div mit einer id zugreifen kann. Diesen weg möchte ich aber nicht einschlagen.
Hi there!
Ich kann es dir nicht näher begründen, aber bei DOM-kompatiblen Browsern (Firefox, Opera, Safari, Netscape, Chrome) funktioniert für das Lesen des Klassennamens:
document.getElementsByTagName("div")[0].getAttribute("class")
Für den IE 6 funktioniert (auch für IE 7,8, aber die funktionieren eventuell auch mit Lösung 1 - dies habe ich nicht getestet):
document.getElementsByTagName("div")[0].getAttributeNode("class").value
Grüße,
Richard