molily: Schleife mit CreateAttribute mit window.open nur einmal

Beitrag lesen

var valert = document.createAttribute("onclick");
     valert.nodeValue = "alert(this.src);";
    var vopen = document.createAttribute("onclick");
     vopen.nodeValue = "popup(this.src);return false";

bilder[i].setAttributeNode(vopen);
<!--bzw. bilder[i].setAttributeNode(valert); -->

1. Benutze NIE createAttribute und setAttributeNode. Das ist umständlich und nicht browserübergreifend.
2. Besser ist es, die Objekteigenschaften direkt zu setzen: element.attributname = "attributwert";
4. Das Registrieren von Event-Handlern ist eine Ausnahme. Nutze das traditionelle Event-Handling: element.onclick = handlerfunktion;

Das heißt, du notierst die Handlerfunktion:
function clickHandler () {
   popup(this.src);
};

Und in der Schleife registrierst du die Handler:

bilder[i].onclick = handler;

Mathias