Yadgar: Image-Objekte in Arrays speichern nicht möglich?

Beitrag lesen

High!

Inzwischen habe ich es zumindest prinzipiell geschafft, die onMouseOver/onClick-Grafiken richtig einzubinden, wundere mich aber über folgendes:

Dieser Code hier:

over0 = new Image();
      over1 = new Image();
      click0 = new Image();
      click1 = new Image();
      out0 = new Image();
      out1 = new Image();
      over0.src = "n0over.gif";
      over1.src = "n1over.gif";
      click0.src = "n0click.gif";
      click1.src = "n1click.gif";
      out0.src = "n0.gif";
      out1.src ="n1.gif"
      im2[0].onmouseover = function (evt) {this.src = over0.src};
      im2[1].onmouseover = function (evt) {this.src = over1.src};
      im2[0].onclick = function (evt) { this.src = click0.src };
      im2[1].onclick = function (evt) { this.src = click1.src };
      im2[0].onmouseout = function (evt) { this.src = out0.src };
      im2[1].onmouseout = function (evt) { this.src = out1.src };

funktioniert einwandfrei, während sich bei:

over = new Array(2);
    click = new Array(2);
    out = new Array(2);
    i = 0;
    while (i < 2)
    {
      over[i] = new Image();
      click[i] = new Image();
      out[i] = new Image();
      over[i].src = "n" + i + "over.gif";
      click[i].src = "n" + i + "click.gif";
      out[i].src = "n" + i + ".gif";
      im2[i].onmouseover = function (evt) {this.src = over[i].src};
      im2[i].onclick = function (evt) { this.src = click[i].src };
      im2[i].onmouseout = function (evt) { this.src = out[i].src };
      i++;
    }

gar nichts tut... seltsamerweie bekomme ich aber die Fehlermeldung "...has no properties" nur für over[i] und out[i], nicht aber für click[i] angezeigt! Dabei sehe ich weder einen Unterschied in der Deklaration der drei Arrays untereinander, noch kann ich nachvollziehen, wieso ausgerechnet Image()-Objekte nicht in Arrays speicherbar sein sollten...

Bis bald im Khyberspace!

Yadgar