ユーザーがページを離れた後にブラウザの [戻る] ボタンを押して再度表示する場合、HTML ページ自体を変更する必要があります。
jQuery を使用して、このイベントを取得するにはどうすればよいですか? 私はこれを試しました:
$(function() {
DoSOmething();
});
ユーザーがページを離れた後にブラウザの [戻る] ボタンを押して再度表示する場合、HTML ページ自体を変更する必要があります。
jQuery を使用して、このイベントを取得するにはどうすればよいですか? 私はこれを試しました:
$(function() {
DoSOmething();
});
この Web サイトを試してみてください: http://www.bajb.net/2010/02/browser-back-button-detection/ これには、クラスを使用した非常に単純なコードのデモがあります。
<script type="text/javascript">
bajb_backdetect.OnBack = function()
{
alert('You clicked it!');//Do something!
}
</script>
これで仕事ができるはずです!
うーん..何をしようとしているのかわかりませんが、ページが読み込まれた直後に関数を実行する必要がある場合は、次のような load イベントを使用する必要があります。
$(window).load(function(){ //all of the code inside this function will fire after the page has been loaded
DoSomething();
});
との違い
$(document).ready(function({ //this code will fire as soon as the browser downloads the js file or if it's already on cache, will fire it right after the "handshake" with the server
DoSomething();
})
これは$(window).load
、サーバーとのすべての通信が完全に解決され、すべての HTML がブラウザーに読み込まれるまで起動しませんが、$(document).ready
すぐに起動します。
おそらく、関数はページにまだロードされていない要素を探しているため、何もしません。
必要に応じて、次のように jqueryless または通常の JavaScript で実行できます。
window.onload = function(){
DoSomething();
}
$(window).load と同じですが、jquery の肥大化はありません。それが役に立てば幸いです、乾杯。
考えられる方法の 1 つは、Cookie を設定して、ページに戻ってきたユーザーを検出することです。戻るボタンを文字通り検出するわけではありませんが、戻るボタンが使用された場合など、ページに戻ったときにコードを実行できます。
Cookie の有効期間を短く設定することで、長く存続しないようにすることができます。
必ずしも最善の方法ではありませんが、1 つの可能性として考えてください。History API は、プライバシー上の理由から、その内容を意図的に明らかにしません。