Guys, saya menemukan bahwa JQuery hanya memiliki satu efek: halaman dimuat ulang ketika tombol kembali ditekan. Ini tidak ada hubungannya dengan " siap ".
Bagaimana cara kerjanya? Yah, JQuery menambahkan pendengar acara onunload .
// http://code.jquery.com/jquery-latest.js
jQuery(window).bind("unload", function() { // ...
Secara default, itu tidak melakukan apa-apa. Tapi entah bagaimana ini tampaknya memicu pemuatan ulang di Safari, Opera dan Mozilla - tidak peduli apa yang ada di event handler.
[ sunting (Nickolay) : inilah mengapa ia bekerja seperti itu: webkit.org , developer.mozilla.org . Silakan baca artikel-artikel itu (atau ringkasan saya dalam jawaban terpisah di bawah) dan pertimbangkan apakah Anda benar - benar perlu melakukan ini dan membuat halaman Anda memuat lebih lambat untuk pengguna Anda.]
Tidak bisa percaya? Coba ini:
<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>
Anda akan melihat hasil yang serupa saat menggunakan JQuery.
Anda mungkin ingin membandingkan yang satu ini tanpa onunload
<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>