Florian: Seite einmal aktualisieren!

Hallo Forum,

ich habe diese Schleife:

<script type="text/javascript">
for (i=0; i<1; i++){
location.reload();}
</script>

Ich will meine HTML-Seite einmal aktualisieren lassen. Nur sobald die Seite aktualisiert wird wird ja auch wieder meine Schleife aufgerufen.

Wie kann ich die Seite wirklich nur einmal aktualisieren lassen?

Vielen Dank für die Antworten.

Florian

  1. Hallo Florian,

    Wie kann ich die Seite wirklich nur einmal aktualisieren lassen?

    window.name bleibt erhalten, auch wenn die Seite neu geladen wird. Deshalb könnte man es z.B. so machen:

    <BODY onload="if(name!='reloadsperre'){name='reloadsperre';location.reload()}">

    Gruß, Christoph

    1. Hallo Florian,

      Wie kann ich die Seite wirklich nur einmal aktualisieren lassen?

      window.name bleibt erhalten, auch wenn die Seite neu geladen wird. Deshalb könnte man es z.B. so machen:

      <BODY onload="if(name!='reloadsperre'){name='reloadsperre';location.reload()}">

      Kannst du mir bitte noch erklären was du mit reloadsperre meinst? Blick da irgendwie nicht ganz durch.

      Vielen Dank

      1. <BODY onload="if(name!='reloadsperre'){name='reloadsperre';location.reload()}">

        Kannst du mir bitte noch erklären was du mit reloadsperre meinst? Blick da irgendwie nicht ganz durch.

        'reloadsperre' ist nur eine beliebige Zeichenkette. Da könnte auch alles andere stehen.

        Wenn Du die Zeile oben in den Body-Tag kopierst, passiert folgendes: Beim ersten Laden ist name undefiniert (name ist gleich window.name). Also wird das in Klammern ausgeführt: window.name wird der String 'reloadsperre' zugewiesen, und die Seite wird neu geladen.

        Da window.name auch bei einem Reload erhalten bleibt (im Gegensatz zu den Variablen, die du in der Seite definiert hast), passiert nach dem Neuladen folgendes: Da name == 'reloadsperre' wird die Schleife nicht ausgeführt und die Seite bleibt stehen. So lange, bis du window.name wieder einen anderen Wert zuweist und die Seite neu aufgerufen wird.

        So verständlich?

  2. entweder per 'onload=' wenn Du den Reload in einer Funktion versteckst oder bei irgendeinem Ereignis/Link/Button/Timer, andernfalls erschließt sich mir keinerlei Sinn ...