< Transparent custom corners and borders | AJAX in Action Konferenz 2006 - Ein Fazit >

2006-09-26 IE Background Flicker Bug behoben - kann es wirklich so einfach sein?

Seit wir angefangen haben unsere Webseiten Standartkonform aufzubauen hat ein Bug (OK es waren viele aber der war wirklich kacke) richtig genervt, das Flickern der Hintergrundbilder im Internet Explorer.

Schuld daran ist die Tatsache, daß der IE es für notwendig hält, bei jedem Wechsel des Hintergrundbildes zu prüfen ob sich dieses geändert hat und somit neu abzurufen anstatt es aus dem Cache zu ziehen.

Dieser Effekt hat auch für allerlei kreative Umwege und für ein völlig neues Herangehen beim Austausch von Hintergrundbildern bei MouseOver gesorgt.

Dank dem fröhlichen Flackern des Redmonders haben wir angefangen die Hintergrundbilder zu verschieben anstatt auszutauschen und uns damit richtig Arbeit gemacht. Egal, es hat so funktioniert und wir haben uns darüber gefreut.

Keiner hätte gedacht, daß man dem Internet Explorer nur sagen muß, daß man nicht möchte, daß er sich so verhält, aber genau so scheint es zu sein!

Dan POPA aus Bukarest fand mehr oder weniger durch Zufall die IE-Property die das "lustige" Cache-Verhalten steuert. Und die fertige Lösung und deren Anwendung präsentiert er jetzt unter Mister-Pixel.com

Eine einzige Zeile JavaScript reicht übrigens schon:


document.execCommand('BackgroundImageCache', false, true);
 

Gefunden dank ajaxian

Trackbacks
No Trackbacks

Comments

Jens GrochtdreisIch habe dieses Verhalten nie bei einer meiner Seiten gesehen, kenne aber schon seit zwei Jahren ein Lösung ohne Javascript. BErichtet wurde sie bei web-graphics (http://web-graphics.com/mtarchive/001585.php) , die Testseite befindet sich hier: http://www.ryanschristie.com/testcases/sos/index.html
#1 Jens Grochtdreis (Homepage) on 2006-09-26 17:53 (Reply)
Erikalso ich hab das Verhalten auch schon festgestellt, wobei mir mehr der Reload des Bildes aufgefallen ist, als ein Flackern.
Da gings mal um ein animiertes gif (ein kleiner animierter "Checked" Haken) Das Verhalten des IE hat mir da sogar besser (irgendwie intuitiver) gefallen. Beim FF wird das gif-einmal geladen (wenn kein endlos-loop, dann wirds auch nur einmal abgespielt). Die Animation beginnt also nicht mit dem hover-pseudo Status sondern mit dem Laden der Seite. Ist ein Spezialfall, vermutl. kommt das cachen ja aus dieser gif-Ära ;-)
Ansonsten bewahren mich die ein-bild-verschiebungen meist vor so was.
(Andererseits gibts ein ähnliches Flackern auch im Firefox zB. bei opacity beim hovern) Aber interessante Artikel und Links, vllt nutzen mir ja die htaccess-Dinge auch für den gif-hover-bug :-D des Firefox :-)
#1.1 Erik (Homepage) on 2006-09-26 21:20 (Reply)
HCLthanx! das hat mich lange geärgert.
#2 HCL on 2006-12-12 13:31 (Reply)
Add Comment

Standard emoticons like :-) and ;-) are converted to images.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Gravatar/Favatar/Pavatar/MyBlogLog author images supported.
You can use [geshi lang=javascript/css/html4strict/php]your code[/geshi] tags to embed source code snippets