• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Array mit zwei Bilder für lightbox-Galerie

hasenpfeffer

Neues Mitglied
Hallo zusammen,

ich habe in einem Code den Verweis auf ein BildArray
BildArray[10] = "pics/pic10.jpg";

Diese Quelle wird mit einer Lightbox geöffnet, funkrioniert super.
NUn möchte ich aber, dass nicht nur das eine Bild angezeigt wird, sondern noch ein zweites.

Wie kann ich diese zweite Quelle dem BildArray[10] hinzufügen?
 
BildArray[10] ist Teil eines Arrays (nehme ich an). Weitere Einträge in dem Array könnte man als BildArray[11] oder BildArray[12] etc.pp. speichern/ansprechen.

Wenns das nicht ist, versteh ich die Frage nicht wirklich.
 
Vielen Dank, ich versuche es noch mal zu erklären:

ich habe eine Tabelle mit vielen Links. Ein Klick auf einen Link öffnet ein Bild mit der lightbox (zum Beispiel bei dem Link Nr. 10 das Bild pics/pic10.jpg).
Nun möchte ich aber, dass bei diesem einen Link nicht nur das eine Bild, sondern noch ein zweites angezeigt wird, das man mit blättern aufurfen kann....
 
Jetzt versteh ichs :)

Ich sehe dafür jedoch 2 Möglichkeiten:
Entweder setzt Du in der Seite einen unsichtbaren Link auf das Bild mit dem Attribut rel.
Oder Du ergänzt das Bild in deinem JavaScript-Array, lässt es wie alle anderen ausgeben, aber blendest es ebenfalls aus.

Ausblenden? Dabei denke ich an "display: none;" oder das wegschieben per absolute Positionierung.
 
Jetzt verstehe ich es nicht :(

kann ich denn jetzt einfach schreiben
BildArray[10] = "pics/pic10.jpg"; "pics/pic10a.jpg" ???

Der Aufrud von Bild10.jpf funktioniert jetzt schon wunderbar, aber ich hätte halt gerne auch Bild10a mit angezeigt, also quais eine kleine Galerie pro Link.
 
Du kannst nicht zwei Werte an der selben Position im Array speichern, es sei denn, du erweiterst es um eine Dimension.

BildArray[10][0] = "pics/pic10.jpg";
BildArray[10][1] = "pics/pic10a.jpg";
 
das ist zu viel für mich.... :-)
Ach was, nicht so schnell aufgeben! So schwer ist das nicht. Schreibe es so, wie Tronjer geschrieben hast und im Script schreibst du nicht mehr BildArray[10], wenn du an das erste Bild willst, sondern BildArray[10][0] und auf das zweite Bild greifst du dann mit BildArray[10][1] zu. Mehr ist das nicht! Simple gesagt, es kommt ein [0] und [1] dazu ;)
 
hmmm, okay. Aber dann hab ich noch ne Frage. Im weiteren Verlauf gibt es eine function, in der das BildArrray verarbeitet wird:
var URL = BildArray
kann ich dann dort einfach
var URL = BildArray
schreiben?
 
Nein, denn die Variable i hat ja z.B. den Wert 10, also würdest Du bei deinem Beispiel [10][10] abfragen - das gibt es doch nicht bei dir.

Du müsstest für das innenliegende Array eine weitere Schleife bauen. Beispiel:

Code:
for( var y=0;y<BildArray[i];y++) {
 alert(BildArray[i][y]);
}
 
Mehrdimensionale Arrays in JavaScript sind assig, weil es so etwas in dieser Sprache eigentlich nicht gibt. Anders als in PHP kann man hier nicht mit verschachtelten foreach Schleifen arbeiten.

Code:
var images = new Array();
images[0] = ['bild1', 'bild2', 'bild3','bild4', 'bild5'] //erste Dimension
images[1] = ['bild_a', 'bild_b']//zweite Dimension


for (var i = 0; i <= images[0].length; i++) {
    if (i < images[0].length) {
        alert (images[0][i]);
    } else {
        for (j = 0; j < images[1].length;j++) {
            alert (images[1][j]);
        }
    }
}

Die erste Dimension kann beliebig viele Elemente aufnehmen, iteriert darüber und gibt zum Schluss die Elemente der zweiten Dimension aus.
 
Zurück
Oben