0

ページがアンロードされる前に、更新された URL を取得できますか?

この URL が、ユーザーが更新中に使用している URL であるかどうかを確認したいと思います。ユーザーが別のページに移動する前に何かをしたいと思います。

使用事例:

[通常] ブラウザのアドレスバー: www.mypage.com/page1.html ユーザーがリロードをクリック ポップアップ通知が表示されない ページがリロードされる

[異常] ブラウザのアドレス バー: www.mypage.com/page1.html ユーザーがアドレス バー: www.anotherpage.com を変更する www.anotherpage.com が読み込まれる前に POP UP 通知が表示される

ページがアンロードされる前にアドレス バーの現在の値を取得する方法を知りたいので、次のコード スニペットを試しました。

var currPage;
window.onload = function(){
    currPage = document.location.href;
}
window.onbeforeunload = function (e){
    var nextLocation = document.location.href; // I assumed this value will update always. but NOT! :((
    if( currPage != nextLocation )
    {
        alert("You're leaving now??!");
    }
}

私を助けてください。

4

1 に答える 1

1

document.location.href常に、スクリプトが実行されているページの URL を提供します。変わりません。

ユーザーが移動しているページの URL を取得できません。これらのケースをキャプチャするために、すべての発信リンクにハンドラーを配置できclickますが、明らかなプライバシー上の理由から、ユーザーがアドレス バーに入力したアドレスを読み取ることはできません。

于 2010-09-21T10:03:16.553 に答える