Jquery Content nachladen - Flackern
Redphex 07.08.2015 - 09:05 2745 8
Redphex
Legend RabbitOfNegativeEuphoria
|
Ich verwend auf einer Webseite jquery, um divs mit Inhalt zu befüllen. Beispiel - http://redphex.net/test.htmlDas flutscht, aber mich stört das Flackern (vorher nix, dann content) beim Page-Refresh. Anscheinend google ich immer am Problem vorbei, oder Lösungen wie http://james.padolsey.com/snippets/...dom-flickering/ beziehen sich auf was anderes. Was funktioniert ist, den body initial auf display:none zu setzen und mit 100ms verzögerung erst einzublenden. Das ist aber auch nicht wirklich elegant. Kennt da wer noch andere Lösungsansätze?
Bearbeitet von Redphex am 07.08.2015, 19:49
|
kleinerChemiker
Here to stay
|
Bei mir flackert nix.
|
SailorChibi
Addicted
|
Bei mir "flackerts" auch (Chrome).
Holst du dir den Content über AJAX?
|
AdRy
Auferstanden
|
Ich glaub er meint, dass wenn du F5 drückst das ganze bild refreshed wird und nicht nur der inhalt -> "flackern"
Das Problem ist hier glaub ich, dass du die ganze tabelle per jquery aus einem erxternen html ladest und nicht nur den inhalt der zellen.
Schau dir mal andere websites an: JEDES dynamische elemente "flackert" beim refresh. Die Lösung ist wie gesagt nur den inhalt der Zellen, statt die ganze tabelle zu laden.
|
SailorChibi
Addicted
|
Die Lösung ist wie gesagt nur den inhalt der Zellen, statt die ganze tabelle zu laden. Er kann ja vorher nicht wissen wie viele Zellen er haben wird, wenn der Content dynamisch ist. Mmn gibt es dafür keine Lösung, weil AJAX einfach so funktioniert. 1) Seite wird geladen (Tabelle ist leer) 2) Javascript wird getriggert 3) Javascript lädt Content 4) Seite wird aktualisiert (Tabelle ist voll)
|
AdRy
Auferstanden
|
Er kann ja vorher nicht wissen wie viele Zellen er haben wird, wenn der Content dynamisch ist. z.b. nur den tabellen header fix haben und die zeilen dynamisch dazu laden. Dann flackert wenigstens nicht alles. oder mit animation die zeilen nacheinander reinfaden lassen, kann man alles machen.
|
Redphex
Legend RabbitOfNegativeEuphoria
|
Bis sich was besseres findet, werde ich das main div mit einem 300ms fadeIn versehen. Das sieht zumindest etwas kontrollierter aus als sonstigen browserspezifischen Zuckungen und stört kaum.
|
Redphex
Legend RabbitOfNegativeEuphoria
|
Und bessere Lösung ist sogar ganz einfach.
Es gibt ja keinen Grund, die Erstansicht der content-divs (sprich die Tabelle im Beispiel) nicht schon im parent.html zu haben. Wenn sich dann was am content ändert (durch klick oder sontwas) wirds ja trotzdem ersetzt.
Content vorhanden -> kein Flackern.
|
11Fire01
Here to stay
|
node gäbs auch noch
|