Leute, ich habe festgestellt, dass JQuery nur einen Effekt hat: Die Seite wird neu geladen, wenn die Zurück-Taste gedrückt wird. Dies hat nichts mit " bereit " zu tun .
Wie funktioniert das? Nun, JQuery fügt einen Onunload- Ereignis-Listener hinzu.
// http://code.jquery.com/jquery-latest.js
jQuery(window).bind("unload", function() { // ...
Standardmäßig macht es nichts. Aber irgendwie scheint dies ein Neuladen in Safari, Opera und Mozilla auszulösen - egal was der Event-Handler enthält.
[ edit (Nickolay) : Hier ist, warum es so funktioniert: webkit.org , developer.mozilla.org . Bitte lesen Sie diese Artikel (oder meine Zusammenfassung in einer separaten Antwort unten) und überlegen Sie, ob Sie dies wirklich tun müssen, damit Ihre Seite für Ihre Benutzer langsamer geladen wird.]
Kannst du es nicht glauben? Versuche dies:
<body onunload=""><!-- This does the trick -->
<script type="text/javascript">
alert('first load / reload');
window.onload = function(){alert('onload')};
</script>
<a href="http://stackoverflow.com">click me, then press the back button</a>
</body>
Bei Verwendung von JQuery werden ähnliche Ergebnisse angezeigt.
Vielleicht möchten Sie mit diesem ohne Onunload vergleichen
<body><!-- Will not reload on back button -->
<script type="text/javascript">
alert('first load / reload');
window.onload = function(){alert('onload')};
</script>
<a href="http://stackoverflow.com">click me, then press the back button</a>
</body>