Christoph: getElementsByTagName nur auf bestimmtes elternelement anwenden

Beitrag lesen

Moin.

ich habe jetzt einfach mal:

if ( typeof(eltern) != "undefined" ) {
document.getElementById(eltern).getElementsByTagName("a");
}
else
{
document.getElementsByTagName("a");
}

funktionier auch. is das auch ok?

Also _so_ funktioniert das vermutlich nicht - irgendwo solltest du das Ergebnis von getElementsByTagName() ja auch zwischenspeichern...

Ansonsten willst du deiner Funktion also die Id eines Elements übergeben - die anderen Vorschläge sind von einer Element-Referenz ausgegangen.

Mit verwirrender (äh - elegant - ich meinte elegant ;)) Kurzschreibweise würde das z.B. so aussehen:

  
function aendereLinks(elterId) {  
    var elter = elterId && document.getElementById(elterId);  
    var links = (elter || document.body).getElementsByTagName('a');  
    for (var i = 0; i < links.length; ++i) {  
        // mach was  
    }  
}  

Christoph