2009-07-31 8 views
2

Gibt es eine Art Workaround für den Fehler, der Firefox zum flackern bringt, wenn die Größe des Dokuments abnimmt?Firefox Flicker Bug

Click here for a demo

Click here for the demo in quirks mode (no DOCTYPE)

Ich wette, es fixiert mit Hilfe von Javascript werden könnte - wann immer die Scrollbar schrumpft, stellen Sie sicher, das Fenster rollen bis das Flimmern oder etwas .. Gedanken zu verhindern?

aktualisieren: der Fehler nicht sein, diese Gegenwart erscheint (oder zumindest nicht so stark) im Quirks-Modus

+0

Nicht ganz sicher, wie sich die Frage auf die Demo bezieht. Für mich verkleinert das Demo ein Bild. Es gibt keine Änderung in irgendeiner Fenstergröße. Gibt es etwas, das ich wiederholen sollte? –

+0

Ihre Demo hat JS-Fehler in ... –

+0

er .. Änderung der Dokumentgröße oder etwas .. ich meine, wenn es einen Überlauf auf der Seite gibt, so dass die Bildlaufleiste verwendbar ist. Versuchen Sie, das Fenster kleiner zu machen, wenn Sie eine hohe vertikale Auflösung oder etwas anderes haben. auch, Firebug wirft keine JS-Fehler für mich .. –

Antwort

2

Do: Das Problem ist, dass die Seite scrollt, wie das Bild der Größe verändert wird.

Lösung eins: Fügen Sie die jQuery Bibliothek und jQuery Scroll Plugin hinzu. blättern dann zu dem Bild, indem Sie die folgenden Schritte aus:

$.scrollTo("#image", "fast", function(){ 
    //resize image here 
}); 

OR!

einfach deaktivieren Überlauf für den Behälter der Bild/Seite vorübergehend:

$(body).css("overflow", "hidden"); 
//do resize 
//on resize end (after it has finished): 
$(body).css("overflow", "auto"); 

soll Ihr Problem lösen!

EDIT:

ich wette mit Javascript behoben werden kann - immer dann, wenn die Bildlaufleiste schrumpft, stellen Sie sicher, das Fenster rollen bis das Flimmern oder etwas .. Gedanken zu verhindern?

Ja!

//before resizing 
var scrollInterval = setInterval(function(){ 
    $.scrollTo("#image", "fast"); 
}, 1); 
//do your resizing 
//once resizing done 
clearInterval(scrollInterval); 
+0

Das ScrollTo-Plugin war die einzige wirkliche Problemumgehung für mich. Irgendwo sonst sah ich einen Vorschlag, einen Überlauf zu machen: versteckt, dann ändere ich ihn wieder in Auto, aber das hat nie für mich funktioniert .. schade, denn das klingt nach der bestmöglichen Lösung. Danke! –

+0

jederzeit! froh, dass ich Helfen kann. –

+0

Ich ging zu Ihrer Demo und in Firebug hinzugefügt Überlauf: versteckt, um das Body-Tag. Kein Flimmern. Das geht nicht für dich? – mwilcox