Knight: Zugriff auf Element durch Attribut eines Kindelements

Beitrag lesen

Hallo Allerseits,

nochmal Danke. Jetzt habe ich es hinbekommen. Falls es noch Probleme gibt, melde ich mich.

Hier ist die Meldung. Mir ist einerseits ein Fehler aufgefallen und andererseits funktioniert es noch nicht ganz:

  
function remove() {  
    for (var i = 1; i <= getIMG.length; i++)  
    if(getIMG[i]) {  
       if(getIMG[i].src == 'images/bereich1/bild1.png') {  
          var beispielvar = getIMG[i].parentNode;  
          beispielvar.setAttribute('style', 'display: none;');  
       }  
    }  
}  
  
  
function if_window_visible() {  
    if(document.getElementById('bag')) {  
       getIMG = document.getElementById("bag").getElementsByTagName("img");  
       removeWeapons();  
    }  
}  
  
  
window.setInterval('if_window_visible()', 1);  

Der Fehler der mir aufgefallen ist: Bei "if(getIMG[i].src == 'images/bereich1/bild1.png')" wird geprüft ob eines der Bilder, die im Array sind, die gewünschte Quelle hat. Soweit, so gut, aber danach bei "var beispielvar = getIMG[i].parentNode;" wird ja trotzdem von jedem Bild, dass in der Variable i im Moment ist, das Elternelement genommen. Das heißt doch, dass theoretisch in der variable beispielvar jetzt alle Elternknoten sind. Ist das wirklich so? Eigentliches Ziel ist es ja, nur das Elternelement des Bildes der darüberstehenden if-Anweisung zu nehmen.

Weiterer Fehler: Ich habe als Erstes aus Versehen in der if-Anweisung "if(getIMG[i].src == 'images/bereich1/bild1.png')" ein Ungleich gemacht, anstatt ein gleich-gleich. Mit dem Ungleich hat alles funktioniert (d.h. das alles auf "display: none;" gesetzt wurde was eben NICHT diese Quelle hat. Jetzt habe ich das != zu == geändert und - es funktioniert nichtmehr. Kann mir jemand die Lösung sagen?

MfG
Knight

--
Achtung! JavaScript Anfänger am Werk!