Firefox lädt bei mouseout bzw. mouseover GIFanimation neu
Clemau
- javascript
Hallo, ich habe ein spezielles Problem.
folgende Seite habe ich gestaltet, als Beispiel:
http://www.somekindofitem.com/firefoxbug/
Mit Firefox Version 2.0.0.11 passiert folgendes:
Das Mouseoverbild wird richtig angezeigt, aber alle bisher besuchten Bildchen,
welche onmouseout bereits hinter sich haben werden auch wieder neu geladen.
Bzw. alle GIF-Animationen die per onmouseout betroffen sind,
werden allerorts ebenfalls neu abgespielt. Wieso ???
Im Internetexplorer erscheint es richtig.
Alle Bilder haben eine unterschiedliche ID
und einen unterschiedlichen Namen.
Weiß denn niemand, was man dagegen tun kann ?
Das Problem tritt nur bei Firefox auf!
Das Gif, wird, nachdem es mit on mouseout geladen wird (richtigerweise) auch an allen anderen stellen der Seite von vorne abgespielt.
vielleicht sollte ich dieses Thema auch unter Brwoeser erstellen?
.. ich habe ein Workaround gefunden, das im
Internetexplorer von Microsoft
UND im Mozilla Firefox gleichermaßen FUNKTIONIERT !
(Quelle: http://www.webdeveloper.com/forum/showthread.php?t=86272 (10.01.2007) )
code:
Zugriff mit this.src:<br>
<table border="0">
<tr>
<td>
<img alt="Leuchte" src="leuchte_dunkel.gif" width="16" height="16" onMouseOver="this.src='leuchte_hell.gif';" onMouseOut="this.src='leuchte_aus.gif?0x0';">
</td>
<td>
<img alt="Leuchte" src="leuchte_dunkel.gif" width="16" height="16" onMouseOver="this.src='leuchte_hell.gif';" onMouseOut="this.src='leuchte_aus.gif?0x1';">
</td>
...
Jetzt ist der Effekt verhindert, weil der Firefox durch das
Anhängsel bild.gif?xyz das Bild als einzigartiges Bild ansieht
und es auch so behandelt.
Dabei muß xyz eine eindeutige Folge aus Zahlen und Buchstaben
sein, lieber nicht zu lang, muß bloß eindeutig sein und darf
natürlich keine funktionellen Sonderzeichen enthalten.
So läuft die Animation wirklich nur dort ab, wo sie
ablaufen soll.