erst am ende eines animierten gifs ein imagemap mit links
GraveDigga
- javascript
0 chraecker Heller0 GraveDigga0 Mirko
ich möchte ein html-doc machen, in dem ein animiertes gif einmal
durchläuft. gibt e eine möglichkeit, dass man erst am ende ein
imagemap einfügt/ das die links erst am ende anklickbar sind???
danke
Hallo,
nein, denn Du weißt nie, wann das Gif zuende sein wird. man kann natürlich auf Nummer sicher gehen, und bei einer 10 Sekunden Animation einfach 3 Minuten warten ;-)
Zerlege lieber die Animation, lade sie vor und tausche sie per Javascript selber aus. dann hast Du alles im Griff....
Chräcker
aha, undwie stellst du dir das vor??
Hallo,
es geht nur mit javascript, daß vorneweg, das solltest Du zumindestt schon mal "gesehen" haben ;-))))
schau mal in SELFHTML nach, wie dort der Mouseover-Effekt funktioniert. Da werden zwei Grafiken vorgeladen und ihnen "namen" gegeben. Beim überfahren des entsprechenden Images wird eine Routine aufgerufen, die das im Body geschriebene image gegen eines der beiden vorgeladenen austauscht.
Das ist schon mal eine menge Rüstzeug. Du lädts, wie im Bsp. , die einzelnen Phasen vor, sagen wir mal es sind 16 Bilder. Am besten in eine Feldvariabel, also eine "durchnummerierte" Variabel. (steht auch in SELFHTML) Im Body steht ein unsichtabres Gif mit der gleichen Größe der Animation. Nun wirds ein wenig kniffelig, weil es keine "warte-einen-Moment" Funktion in JS gibt. Deswegen baust Du eine Funktion, die per setTimeout in regelmässigen Abständen aufgerufen wird. In dieser Funktion zählst Du einen zähler, der bei 1 anfängt, immer um eins hoch und tauschst das im Body stehende Imange-tag (analog zum Mouseoverbeispiel) gegen das vorgeladenen Bild mit der gerade hochgezählten Nummer aus.
nach dem hochzählen und vor dem austauschen must Du nur noch überprüfen, ob Du nicht gerade versuchst, eine Nummer zu hoch auszutauschen, die Animation also schon das letzte Bild erreicht hat. Wenn dem so ist, dann tascht Du natürlich nichts mehr aus, beendest die laufenden Aufrufung der unktion und stellst den weiterführenden Link dar. Entweder indem Du nun eine weitere Seite lädst, ein Div einblendst oder den link dynamsich schreibst.
Ach ja, durch die Zahl der milisekunden, die Du beim setTimeout eingibst, bestimmst Du die Geschwindigkeit der Animation...
So stelle ich es mir vor ;-)
Chräcker
http://www.Stempelgeheimnis.de
PS. übrigens: klang ein wenig fordernd, Deine Gegenfrage, so ohne Anrede und Abrede und klassischen Höflichkeitsfloskeln, nur so am Rande....
sorry, dachte nicht dass das fordernd klingt, war nur ein
wenig verwirrt
thx
Hi Du.
nein, denn Du weißt nie, wann das Gif zuende sein wird. man kann natürlich auf Nummer sicher gehen, und bei einer 10 Sekunden Animation einfach 3 Minuten warten ;-)
Das geht schon, und zwar mit NN4.x, IE4.x und IE5.x. NN6 wohl scheinbar leider nicht.
Und zwar: Registriert man im IMG-Tag des Bildes einen Onload-Handler, feuert der bei einem animierten GIF:
im NN4.x: bei jeder Animationsphase (d.h.: wissen, wieviele Phasen es sind, und mitz"ahlen!)
im IE : bei jedem Neustart der Animation
Der Rest ist ein bissel JS-Gechecke...
Mirko