+ Antworten
Ergebnis 1 bis 6 von 6

Thema: Bilder per Klick austauschen

  1. #1
    TP-Member The Phantom macht alles soweit korrekt
    Registriert seit
    May 2007
    Beiträge
    46

    Bilder per Klick austauschen

    Hallo,

    ich stehe ja bekanntlich mit JS auf Kriegsfuß, aber im Moment könnte ich wirklich komplett durchdrehen.

    Ich versuche, Bilder per Klick austauschen zu lassen.

    Ich habe ein Array mit den großen Bildern und ein Array mit den kleinen Bildern. Alle Bilder haben unterschiedliche Namen.

    Jetzt möchte ich folgendes erreichen:

    Ich habe ein großes Bild und 5 kleine Bilder. Wenn ich jetzt auf Bild 4 klicke, dann soll sich das große Bild mit dem kleinen Bild austauschen. Dabei müssen ja auch die entsprechenden Werte aus den beiden Arrays ausgelesen werden.

    Ich weiß überhaupt nicht, wie ich da ran gehen soll. Kann auch sein, dass es ganz simpel ist, und ich gerade auf dem Schlauch stehe.

    Aber ich komme ohne Hilfe grad nicht weiter.

    Also: Vielen Dank im Voraus!

  2. #2
    TP-Moderator Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Avatar von Nightline
    Registriert seit
    Jan 2003
    Ort
    Wien
    Beiträge
    4.123
    Also erstmal wäre es toll gewesen, wenn du ein Online-Beispiel posten könntest. Ich weiß z.B. nicht, ob du mit dem Thumbnail-Array automatisch eine Bildliste generieren lässt oder die Thumbnails händisch in deine HTML-Datei einfügst. Falls zweiteres, brauchst du das Array eigentlich gar nicht. Aber gut, schauen wir mal:

    1.) Deine Arrays sehen wahrscheinlich ca. so aus:

    PHP-Code:
    big_img = new Array (
        
    "haus.jpg",
        
    "boden.jpg",
        
    "tisch.jpg",
        
    "fenster.jpg"
    );

    small_img = new Array (
        
    "haus_th.jpg",
        
    "boden_th.jpg",
        
    "tisch_th.jpg",
        
    "fenster_th.jpg"
    ); 
    2.) Gib jedem Thumbnail einen Link mit, der eine Funktion aufruft (siehe übernächster Punkt) und die Indexnummer des dazu gehörigen großen Bildes als Parameter angibt:

    PHP-Code:
    <a href="javascript:HolDasBild(0);"><img src="haus_th.jpg" width="xx" height="xx"></a
    3.) An der Stelle, wo jeweils das große Bild erscheinen soll, fügst du dem img-Tag eine ID hinzu, um das Bild nachher per Javascript ansprechen zu können:

    PHP-Code:
    <img id="foto" src="platzhalter.jpg"
    4.) Schreibe eine Funktion, die das Foto austauscht:

    PHP-Code:
    function HolDasBild(bild) {
        
    document.getElementById("foto").src big_img[bild];

    Das sind die Hauptschritte, zusammen setzen musst du es halt noch.

    Übrigens: Im ersten Link meiner Sig siehst du Bildergalerien, in denen die Beschreibung der Fotos genau wie in deinem Fall gewünscht per Array zu den Fotos zugewiesen wird.
    +lg Nightline
    -------------------------
    Fotoportfolio: http://www.coeser.de/showcase/
    Städte-Fotos aus aller Welt: http://www.coeser.de/impressions/
    DeviantArt-Account: http://nightline.deviantart.com

  3. #3
    TP-Member The Phantom macht alles soweit korrekt
    Registriert seit
    May 2007
    Beiträge
    46
    Ok vielen Dank,

    das ist soweit kein Problem. Ich wollte jetzt nur, dass sich das große Bild mit einem Thumbnail austauscht. Sprich, das große Bild, jetzt ein einem kleinen Bild zu sehen ist und umgekehrt. Ich habe 5 Bilder, nämlich 4 Thumbs und 1 großes. Jetzt muss ein Austausch stattfinden, damit nicht das eine Bild komplett verschwindet. Dieser austausch ist mein Problem. Leider habe ich keine online-Demo...

    Ungefähr so:

    ich habe 5 Bilder

    foto1

    thumb1 thumb2 thumb3 thumb4

    bei Klick auf thumb3 soll das entsprechende Bild von thumb3 aus dem "große Bilder-Array" in foto1 geschrieben und der thumb zu foto1 in thumb3 angezeigt werden.

    Damit komme ich nicht klar!

  4. #4
    TP-Moderator Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Nightline ist ein richtiges Arbeitstier - DANKE Avatar von Nightline
    Registriert seit
    Jan 2003
    Ort
    Wien
    Beiträge
    4.123
    Ok, jetzt verstehe ich was du willst.

    Aber deine gewünschte Variante ist nicht nur sehr kompliziert umzusetzen, sondern mMn auch benutzerfeindlich, da sich das große Bild beim Verkleinern an die Stelle des angeklickten Thumbnails verschieben soll und keine einheitliche Position einnimmt.

    Würde mich aber jetzt echt interessieren, was z.B. gegen fünf Thumbnails bei insgesamt fünf Bildern spricht. Wo liegt der Sinn, dass es nur vier Thumbs gibt?
    +lg Nightline
    -------------------------
    Fotoportfolio: http://www.coeser.de/showcase/
    Städte-Fotos aus aller Welt: http://www.coeser.de/impressions/
    DeviantArt-Account: http://nightline.deviantart.com

  5. #5
    TP-Member The Phantom macht alles soweit korrekt
    Registriert seit
    May 2007
    Beiträge
    46
    Das liegt am Design... Ich habe die Bilder schon so eingebaut und habe die kleinen Bilder alle auf einheitliche Größen gebracht. In diesem Sinne wäre das kein Problem. Und wenn Bilder wirklich mal ungleich groß sind, können sie ja auf die notwendige Größe angezeigt werden indem sie zum Beispiel beschnitten werden.

    Aber dies ist in meinem Falle die einzige Möglichkeit....

  6. #6
    TP-Member The Phantom macht alles soweit korrekt
    Registriert seit
    May 2007
    Beiträge
    46
    Hat niemand mehr eine Idee?

    Ich muss leider diese Methode anwenden, da ich das Design nicht mehr verändern kann.

    Vielen Dank...

+ Antworten

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

     

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51