Bilder vorladen in Javascript Funktion
Kai Hildebrandt
- javascript
Hallo Forum.
Ich möchte eine Animation realisieren. Hierzu wechsle ich mit einer Javascript-Funktion lediglich das aktuelle Bild aus (document.getElementById("ID").src="datei.png").
Meine Frage:
Kann ich die Bilder irgendwie vor dem Aufruf dieser Funktion in den Browser-Cache laden? Es ist etwas doof, wenn man von dieser Animation nur das erste und letzte Bild sieht. :-(
Danke.
Kai
Hallo
Kann ich die Bilder irgendwie vor dem Aufruf dieser Funktion in den Browser-Cache laden?
Frage das Archiv, es weiß eine Menge zum Vorladen von Bildern.
Es ist etwas doof, wenn man von dieser Animation nur das erste und letzte Bild sieht. :-(
Was macht der 56K-User? Ich glaube kaum, er wird lange warten bis dort eine Animation aus vielen Einzelbildern fertig geladen ist.
Verwende doch ein gif
Grüße
David
Frage das Archiv, es weiß eine Menge zum Vorladen von Bildern.
Aber das mache ich doch gerade die ganze Zeit :-/
Es ist etwas doof, wenn man von dieser Animation nur das erste und letzte Bild sieht. :-(
Was macht der 56K-User? Ich glaube kaum, er wird lange warten bis dort eine Animation aus vielen Einzelbildern fertig geladen ist.
Es sind 15 Bilder mit zwischen 3 und 10 KB. Macht ca. 250 KB. Das ist sogar für Modembenutzer vertretbar.
Verwende doch ein gif
Ich mag' GIFs nicht. Ich verwende sie selbst nur, um im IE (unter Windows) transparente Bilder nutzen zu können, da dieser den (schon sehr alten) PNG-Standard nicht unterstützt.
Aber das ist eine andere Geschichte und die soll ein andermal erzählt werden...
Hallo Kai (</faq/#Q-05a>)
Verwende doch ein gif
Ich mag' GIFs nicht. Ich verwende sie selbst nur, um im IE (unter Windows) transparente Bilder nutzen zu können, da dieser den (schon sehr alten) PNG-Standard nicht unterstützt.
Nun, Gifs funktionieren auch in den Browsern, bei denen JavaScript abgestellt ist.
Aber das ist eine andere Geschichte und die soll ein andermal erzählt werden...
Ich denke du denkst das gleiche wie http://www.burnallgifs.org. Aber
Das Unisys-Patent läuft AFAIK 2003 aus. Außerdem würde ich mir auch mal die Seite http://www.noepatents.org/gif.html angucken.
Schöne Grüße
Johannes (</faq/#Q-05c>)
Ich denke du denkst das gleiche wie http://www.burnallgifs.org. Aber
Das Unisys-Patent läuft AFAIK 2003 aus. Außerdem würde ich mir auch mal die Seite http://www.noepatents.org/gif.html angucken.
Ertappt! :-))
Mal im Ernst:
GIFs sind insofern Mist, als dass sie erstens größer sind als PNGs und zweitens nicht die Möglichkeiten von PNGs haben. Gut, das mit den Animationen haben sie den PNGs wieder voraus, aber das ist auch das einzige. Dafür gibt es ja dann MNGs, die allerdings nur sehr halbherzig in die Browser integriert sind, flash sei dank. :-(
Naja... ich habe das Problem mit einer Mischung aus der von Ronny geposteten SelfHTML Lösung und eines Timeouts gelöst. Ist zwar nicht schön und funktioniert auch nur begrenzt, aber immerhin.
Was mir vorschwebte war eine Funktion, die nachprüft, ob die Bilder bereits geladen sind (so a la document.images[i].comlete == true), aber es scheint wohl niemand eine derartige Lösung zu haben?
Werde ich halt noch ein wenig basteln müssen.
Danke auf jeden Fall mal.
Kai
PS:
Werde Lösung ggf. posten!
Hi,
Naja... ich habe das Problem mit einer Mischung aus der von Ronny geposteten SelfHTML Lösung und eines Timeouts gelöst. Ist zwar nicht schön und funktioniert auch nur begrenzt, aber immerhin.
Was mir vorschwebte war eine Funktion, die nachprüft, ob die Bilder bereits geladen sind (so a la document.images[i].comlete == true), aber es scheint wohl niemand eine derartige Lösung zu haben?
http://selfhtml.teamone.de/javascript/objekte/images.htm#complete sollte Doch auch mit JavaScript "erzeugten" Bildern funktionieren, oder nicht?
Zweite Idee: Binde die Bilder mit width und height = 1px oder ähnlich in Deine Seite ein und starte die Animation mit onload.
Grüße,
Ronny
http://selfhtml.teamone.de/javascript/objekte/images.htm#complete sollte Doch auch mit JavaScript "erzeugten" Bildern funktionieren, oder nicht?
Zweite Idee: Binde die Bilder mit width und height = 1px oder ähnlich in Deine Seite ein und starte die Animation mit onload.
Nein, leider nicht.
Folgendes:
Es handelt sich um ein Spiel. Das ganze basiert auf JavaScript. Wenn ich die Seite neu lade, fängt das ganze wieder von vorn an (Variablen werden neu initialisiert).
Ich werde das mit den Bildern jetzt anders machen (ohne JS):
Unsichtbare <div>s, die die Bilder enthalten und somit diese dann laden. Mit den anderen Bilder hat das auch funktioniert, wenn es auch nciht so beabsichtigt war. ;-)
Kai
Hallo
Ertappt! :-))
Mal im Ernst:
GIFs sind insofern Mist, als dass sie erstens größer sind als PNGs und zweitens nicht die Möglichkeiten von PNGs haben. Gut, das mit den Animationen haben sie den PNGs wieder voraus, aber das ist auch das einzige. Dafür gibt es ja dann MNGs, die allerdings nur sehr halbherzig in die Browser integriert sind, flash sei dank. :-(
Darüber ließen sich ausgedehnte Debatten führen, aber die gab es ja schon, im Archiv. :-)
Schöne Grüße
Johannes
Hi Kai,
mach es doch wie hier gezeigt:
http://selfhtml.teamone.de/javascript/beispiele/buttons.htm#quelltext
Grüße,
Ronny