Martin Jussel: Grafik ändern beim Anklicken?

Hallo,

Ein Non-HTML-Profi möchte wissen:
Gibt es die Möglichkeit, einen bestimmten Frame in einer GIF-Animation anzuwählen?

Beispiel:
Ich möchte erreichen, das beim Anklicken einer Grafik, diese wechselt (ähnlich wie beim Anklicken von Buttons in Windows-Applikationen). Dieser Effekt sollte natürlich nicht durch Wartezeit durch das Nachladen einer neuen Grafik beim Anklicken vermiest werden. So habe ich mir überlegt, ob es möglich ist dazu eine GIF-File mit 2 Frames (= GIF-Animation) zu verwenden, wobei die Animation nicht ausgeführt wird, sondern standardmäßig nur Frame 1 dargestellt wird. Beim Anklicken wird dann Frame 2 dargestellt.

Gibt's dazu eine elegante Lösung (browserspezifische Lösungen interessieren mich weniger)?

Cu, Martin

  1. Hallo Martin,

    Gibt es die Möglichkeit, einen bestimmten Frame in einer GIF-Animation anzuwählen?

    Meines Wissens nicht. Du kannst hoechstens eine Grafik in einen Verweis einbetten und beim Anklicken des Verweises eine andere Grafik an die gleiche Stelle laden (das sind dann aber keine Frames eines Anim-GIFs, sondern Einzel-GIFs). Dazu kannst Du beispielsweise so vorgehen wie bei <../../tedg.htm> beschrieben, nur mit dem Unterschied (Beispiel):

    <a href="javascript:Bildwechsel(0,AndereGrafik)">
    <img src="grafik.gif"></a>

    viele Gruesse
      Stefan Muenz

    1. Hi,

      um die Wartezeit beim Nachladen zu vermeiden, bindest Du die zweite Grafik dann noch als 1x1-Pixel großes img an eine unauffällige Stelle ein. So wird es schon in den Cache geladen und ist bei Bedarf verfügbar.

      Cheatah

  2. Hallo,

    Ein Non-HTML-Profi möchte wissen:
    Gibt es die Möglichkeit, einen bestimmten Frame in einer GIF-Animation anzuwählen?

    Beispiel:
    Ich möchte erreichen, das beim Anklicken einer Grafik, diese wechselt (ähnlich wie beim Anklicken von Buttons in Windows-Applikationen). Dieser Effekt sollte natürlich nicht durch Wartezeit durch das Nachladen einer neuen Grafik beim Anklicken vermiest werden. So habe ich mir überlegt, ob es möglich ist dazu eine GIF-File mit 2 Frames (= GIF-Animation) zu verwenden, wobei die Animation nicht ausgeführt wird, sondern standardmäßig nur Frame 1 dargestellt wird. Beim Anklicken wird dann Frame 2 dargestellt.

    Gibt's dazu eine elegante Lösung (browserspezifische Lösungen interessieren mich weniger)?

    Cu, Martin

    Hallo Martin,

    Nachdem ich Deine Anfrage gelesen habe fiel mir ein, dass wir in der letzten Woche schon mal sowas aehnliches hatten. Da habe ich dann auch abgekupfert. Versuchs mal etwa so:
    <SCRIPT LANGUAGE="JavaScript">
    <!--
      bild1   = new Image();    bild1.src   = "bild1.gif";
      bild2   = new Image();    bild2.src   = "bild2.gif";
      var ActivesBild = 1;

    function BildWechsel() {
        if (ActivesBild == 1)
        {
            imgOn = eval("bild2.src");
            ActivesBild=2;
        }
        if (ActivesBild == 2)
        {
            imgOn = eval("bild1.src");
            ActivesBild=1;
        }

    document['WechselBild'].src = imgOn;
    }
    //-->
    </SCRIPT>

    Und an der Stelle wo das Bild hinkommt:

    <A HREF="" onClick = "BildWechsel();return true" ><IMG border=0 NAME="WechselBild"
    SRC="bild1.gif"></A><BR>

    Ich denke so koennte es funktionieren.

    Michael N.