"Flackern" bei Seitenwechsel im Internet Explorer

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • "Flackern" bei Seitenwechsel im Internet Explorer

    Hallo Leute,

    ich habe mal eine Frage zu einem Verhalten, dass ich mir überhaupt nicht erklären kann.

    Meine Webanwendung läuft auf meinem lokalen Testsystem (Windows) und auf dem Produktivserver (Linux Root-Server) eigentlich grundsätzlich problemlos.

    Auf dem Produktivserver wird beim Seitenwechsel das Browser-Fenster im Internet-Explorer allerdings kurz Weiß, bevor die neue Seite angezeigt wird.

    Das ist sehr unschön und für den Anwender sogar evtl. leicht verwirrend. Das Flackern ist nur ganz kurz, aber es fällt definitiv auf.

    Jetzt meine Frage: Warum taucht dieses Problem auf dem Produktivserver auf, auf meinem Windows-Testsystem allerdings nicht.

    Verwendete Technologien:
    Apache, MySQL, PHP5, Javascript

    Desweiteren benutze ich ob_start und ob_flush, um die gesamte Seite vor der Ausgabe zwischenzuspeichern. Hat es vielleicht etwas damit zu tun?

    Ich bin etwas ratlos und hatte leider auch keine Ahnung, wonach ich hier im Forum suchen sollte. Deshalb verzeiht bitte, wenn es zu diesem Problem bereits vorher einen Post gab!

  • #2
    Re: "Flackern" bei Seitenwechsel im Internet Explorer

    Original geschrieben von Saskia
    Desweiteren benutze ich ob_start und ob_flush, um die gesamte Seite vor der Ausgabe zwischenzuspeichern. Hat es vielleicht etwas damit zu tun?
    Ja. Das sollte man nur in ganz speziellen Fällen benutzen, eine willkürliche Anwendung dieser Routine führt zu seltsamen Ergebnissen, wie du es auch beschreibst

    Kommentar


    • #3
      Lokal tritt dieses Problem nicht auf, weil die Seite schneller da ist und der Browser es noch nicht für nötig hält, zu flackern. Übers Internet dauert das alles ein wenig länger und deshalb wird die Seite kurz weiß, damit der User bemerkt das überhaupt was passiert.
      hopka.net!

      Kommentar


      • #4
        Original geschrieben von Hopka damit der User bemerkt das überhaupt was passiert.
        Das ist bestimmt keine Absicht, die Latenz zwischen Client und Server ist daran Schuld, es wäre ziemlich dumm von den PHP-Entwicklern sowas absichtlich einzubauen

        Kommentar


        • #5
          Original geschrieben von Hopka
          Lokal tritt dieses Problem nicht auf, weil die Seite schneller da ist und der Browser es noch nicht für nötig hält, zu flackern. Übers Internet dauert das alles ein wenig länger und deshalb wird die Seite kurz weiß, damit der User bemerkt das überhaupt was passiert.
          Kann ich mir eigentlich nicht vorstellen. Die Anwendung reagiert auf dem Linux-Server (P4/3000) sogar noch ein wenig schneller als auf meinem lokalen Testsystem-Notebook (PM/1600).

          Außerdem habe ich viele extrem langsame, zähe Webanwendungen gesehen, bei denen dieser Effekt auch nicht auftritt?

          Kommentar


          • #6
            Re: Re: "Flackern" bei Seitenwechsel im Internet Explorer

            Also liegt es eher an den ob_ Funktionen?

            Von "willkürlicher" Anwendung möchte ich eigentlich nicht sprechen. Es ist eben sehr praktisch einen Großteil der Ausgabe zwischenzupuffern, um beispielsweise in der gesamten Applikationen Header-Weiterleitungen ohne Fehlermeldung durchführen zu können.

            Und wenn es an den ob_ Funktionen liegt. Warum tritt das Problem auf meinem Testsystem nicht auf?

            Hast du eine Textquelle, die die "seltsamen Ergebnisse", von denen du sprichst, beschreibt?

            Original geschrieben von tha_specializt
            Ja. Das sollte man nur in ganz speziellen Fällen benutzen, eine willkürliche Anwendung dieser Routine führt zu seltsamen Ergebnissen, wie du es auch beschreibst
            Zuletzt geändert von Saskia; 05.07.2006, 14:46.

            Kommentar


            • #7
              Re: Re: Re: "Flackern" bei Seitenwechsel im Internet Explorer

              Original geschrieben von Saskia
              Von "willkürlicher" Anwendung möchte ich eigentlich nicht sprechen. Es ist eben sehr praktisch einen Großteil der Ausgabe zwischenzupuffern, um beispielsweise in der gesamten Applikationen Header-Weiterleitungen ohne Fehlermeldung durchführen zu können.
              "sehr praktisch" == "ich muss (und will) mir um eine ordentliche Scriptstrukturierung keine Gedanken machen" ...?
              I don't believe in rebirth. Actually, I never did in my whole lives.

              Kommentar


              • #8
                Original geschrieben von tha_specializt
                Das ist bestimmt keine Absicht, die Latenz zwischen Client und Server ist daran Schuld, es wäre ziemlich dumm von den PHP-Entwicklern sowas absichtlich einzubauen
                Das ist Absicht des Browsers. Er könnte ja auch die alte Seite weiterhin darstellen, bis die neue komplett geladen ist bzw. bis zumindest ein erster, anzeigbarer Teil geladen wurde.
                hopka.net!

                Kommentar


                • #9
                  Wenn der Browser zu lange zum rendern braucht:
                  Nach Möglichkeit, die Höhen und Breiten der HTML Elemente mit angeben.
                  Ganz wichtig bei IMG Tags!
                  Auch Tabellen und DIVs nicht vergessen..
                  Wir werden alle sterben

                  Kommentar


                  • #10
                    Original geschrieben von combie
                    Wenn der Browser zu lange zum rendern braucht:
                    Nach Möglichkeit, die Höhen und Breiten der HTML Elemente mit angeben.
                    Ganz wichtig bei IMG Tags!
                    Auch Tabellen und DIVs nicht vergessen..
                    Also nochmal:
                    Auf meinem lokalen System läuft das Ganze OHNE Probleme!
                    Also ist es doch schonmal ausgeschlossen, dass es sich um ein rein client-seitiges Problem handelt, oder nicht?

                    Höhen und Breiten sind bevebveu bei allen wichtigen TAGS einschließlich IMG-Tags mit angegeben. Das Fehlen macht sich dann aber eher durch einen fehlerhaften Aufbau bemerkbar (z.B. durch springen und verrutschen von Seitenelemente während des Seitenaufbaus) und nicht durch das genannte Problem.

                    Kommentar


                    • #11
                      Original geschrieben von Saskia
                      Also nochmal:
                      Auf meinem lokalen System läuft das Ganze OHNE Probleme!
                      Also ist es doch schonmal ausgeschlossen, dass es sich um ein rein client-seitiges Problem handelt, oder nicht?
                      ALSO NOCHMAL .....

                      Original geschrieben von Hopka
                      Lokal tritt dieses Problem nicht auf, weil die Seite schneller da ist [...]
                      das generieren auf dem server mag recht schnell gehen. keine frage ... aber die generierten daten müssen noch durch das ganze internet bis zu dir.

                      nun kann dein browser erst anfangen zu rendern, wenn er alle daten oder auch nur einen teil vorliegen hat. die daten bei dir kommen aber alle erst, nachdem die seite fertig generiert ist.

                      und diese zeit hast du halt lokal nicht. da ist der server und der client ja die gleiche maschine.
                      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                      Kommentar


                      • #12
                        Re: Re: Re: Re: "Flackern" bei Seitenwechsel im Internet Explorer

                        Original geschrieben von wahsaga
                        "sehr praktisch" == "ich muss (und will) mir um eine ordentliche Scriptstrukturierung keine Gedanken machen" ...?
                        Danke erstmal an alle bemühten Antworten.

                        @Zu wahsaga:
                        Über gute und schlechte Softwarearchitektur können wir uns gerne mal Privat unterhalten. Jedenfalls stellt eine Zwischenpufferung von Teilen des HTML-Streams wohl absolut kein Beispiel schlechten Programmierstils dar. Würde mir lieber konstruktive Antworten wünschen!

                        Kommentar


                        • #13
                          Auf meinem lokalen System läuft das Ganze OHNE Probleme!
                          Auf deinem Localen System stehen alle Daten in Millisekunden zur verfügung.
                          Online sieht das ganz anders aus!

                          zb. Tabelle
                          Mancher Browser stellt eine Tabelle erst dann dar, wenn die Größen aller Elemente bekannt sind! Ebend um das Springen zu unterdrücken!
                          Und der IE gehöhrt meines Wissens dazu!
                          Wir werden alle sterben

                          Kommentar


                          • #14
                            Re: Re: Re: Re: Re: "Flackern" bei Seitenwechsel im Internet Explorer

                            Original geschrieben von Saskia
                            Jedenfalls stellt eine Zwischenpufferung von Teilen des HTML-Streams wohl absolut kein Beispiel schlechten Programmierstils dar.
                            Ich sehe idR. keinen Grund, vom EVA-Prinzip beim Scripten in PHP abzuweichen ...

                            Zumindest die Entscheidung, ob ich Cookies setzen oder andere Header auslösen möchte, die kann ich auf jeden Fall schon treffen, bevor ich die erste Ausgabe mache.
                            Als Ersatz dafür output buffering zu missbrauchen, erscheint mir widersinnig.
                            I don't believe in rebirth. Actually, I never did in my whole lives.

                            Kommentar


                            • #15
                              Re: Re: Re: Re: Re: "Flackern" bei Seitenwechsel im Internet Explorer

                              Original geschrieben von Saskia Jedenfalls stellt eine Zwischenpufferung von Teilen des HTML-Streams wohl absolut kein Beispiel schlechten Programmierstils dar.
                              Und wie es das ist, und wenn du erstmal systemintegrative Erfahrungen gesammelt hast wirst du das bestätigen. Ich habe jeden Tag Probleme mit minder qualitativem Code, der von solchen Vermutungen und Theorien ausgeht.

                              Wenn man einen Teil des eigentllich unsichtbaren Codes zwischenspeichert, entsteht genau hier ein Angriffspunkt: Scriptkiddies müssen nur zum rechten Zeitpunkt auf "STOP" drücken, schon haben sie den kompletten, bis dahin verarbeiteten Code inkl. HTML. Eine Automatisierung wäre leicht zu backen... Ferner ist dieser Puffer etwas ähnliches wie "Verarbeite XY .... STOP! Gib alles bis hier aus! Ignoriere den Rest " Merkste einen? Das ist nicht gerade die intelligenteste Lösung, um Daten zu verarbeiten denn hier entstehen mit Sicherheit überschneidungen und Fehler die alles irgendwann zusammenbrechen lassen.

                              Deine Vermutung basiert auf "ich DENKE mal, dass das so sein wird, also MUSS das auch korrekt sein, weil ich weiss sowas ja, blablabla...." Das ist der Schlüssel zum Untergang, deswegen ist die Branche derzeit so verrufen
                              Zuletzt geändert von tha_specializt; 05.07.2006, 21:21.

                              Kommentar

                              Lädt...
                              X