LX: Problem mit Bildwechsel-Script

Beitrag lesen

Meine Glaskugel orakelt gerade, dass im anderen Dokument noch ein weiteres Bild ist, welches Du nicht mitgezählt hast.

Statt der Nummer des Bildes solltest Du lieber das <img>-Node selbst an die Funktion übergeben - das geht so:

HTML: <img src="locked.gif" onclick="bildwechsel(this);" />

JS:

  
var imgsrc = [ (new Image()).src = 'locked.gif', (new Image()).src = 'unlocked.gif' ];  
  
function bildwechsel(img) {  
   img.status = !img.status;  
   img.src = imgsrc[img.status ? 0 : 1];  
}

In diesem Code stecken gleich ein paar Tricks: der erste besteht darin, in der Erzeugung des Arrays die Bilder vorzuladen. Der zweite besteht in der Verwendung einer Objekt-Instanz zum Speichern des Status. Der dritte besteht in der Verwendung des Not-Operators zur Auswertung des Status.

Gruß, LX

--
RFC 1925, Satz 3: Mit ausreichendem Schub fliegen Schweine wunderbar. (...)