Çocuklar, JQuery'nin sadece bir etkisi olduğunu buldum: geri düğmesine basıldığında sayfa yeniden yüklenir. Bunun " hazır " ile bir ilgisi yok .
Bu nasıl çalışıyor? JQuery bir onunload olay dinleyicisi ekliyor .
// http://code.jquery.com/jquery-latest.js
jQuery(window).bind("unload", function() { // ...
Varsayılan olarak hiçbir şey yapmaz. Ancak bir şekilde bu, olay işleyicinin içeriği ne olursa olsun Safari, Opera ve Mozilla'da yeniden yüklemeyi tetikliyor gibi görünüyor.
[ edit (Nickolay) : işte neden böyle çalışıyor: webkit.org , developer.mozilla.org . Lütfen bu makaleleri okuyun (veya aşağıdaki ayrı bir yanıtta özetimi) ve bunu gerçekten yapmanız gerekip gerekmediğini düşünün ve sayfanızın kullanıcılarınız için daha yavaş yüklenmesini sağlayın.]
İnanamıyor musunuz? Bunu dene:
<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>
JQuery kullanırken benzer sonuçlar göreceksiniz.
Bunu onun yüklemesi olmadan karşılaştırmak isteyebilirsiniz
<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>