• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Frage getElementsByClassName vs. getElementById

Sebashan

Neues Mitglied
Moin,

soweit ich es verstanden habe, liegt der Unterschied in der Nutzung von <id> oder <class> darin, dass ich <id> nur einmal je Seite nutzen kann. <class> wiederum mehrmals. Nun habe ich folgendes: Nutze ich <id>, dann funktioniert das hovern, warum aber nicht bei der Nutzung von <class>??

HTML:
<td><img src="../img/B_off.JPG" id="hovern" onmouseover="over();" onmouseout="out();"/></td>

Javascript:
function over() {
    document.getElementById('hovern').src="../img/B_on.JPG";
}
function out(){
    document.getElementById('hovern').src="../img/B_off.JPG";
}

Folgender Code funktioniert nicht:
HTML:
<td><img src="../img/B_off.JPG" class="hovern" onmouseover="over();" onmouseout="out();"/></td>

Javascript:
function over() {
    document.getElementsByClassName('hovern').src="../img/B_on.JPG";
}
function out(){
    document.getElementsByClassName('hovern').src="../img/B_off.JPG";
}
 
Werbung:
Javascript:
  document.getElementsByClassName('hovern')[0].src="../img/B_on.JPG";
Du kriegst ja mehrere Elemente.
Nimm doch:
Javascript:
document.querySelector(".example");
 
Werbung:
Zurück
Oben