1

ページが他のページに移動している場合や閉じている場合は、すべてのCookieを削除します。それ以外の場合は、ページを正常に更新します。その背後にある理由は、タブのCookieをクリアすることです。

だから私の質問は:
ページが更新されているか、ナビゲートしているか閉じているかをどうやって知ることができますか?

使ってみました

window.onbeforeunload = function() {
    var old_url= window.location.href;
    var new_url=  /* I dont know how to get new URL here */;
    if(old_url == new_url){
      return true;
    }
    else {
      return false;
    }
}

それは機能していません:(
それを行う他の方法はありますか?

4

3 に答える 3

1

JavaScript でグローバル変数を宣言しました。

<script type="text/javascript">
  var is_refresh_true = true;
</script>

そして、javascript を使用してページを更新しようとするたびに、変数の値を false に変更しました
例:

<script type="text/javascript">
   function Callme(){  
      is_refresh_true = false;
      window.location.href = window.location.href;
    }
</script>

また、本体の onUnload イベント:

 function DeleteCokies() {            
     if (is_refresh_true) {
            deleteAllCookies();
     }
 }

それは完璧な解決策ではありませんが、私にとってはうまくいきます。
それでも私は完璧な答えを待っています。見つけた人いたら返信お願いします。

于 2012-09-17T14:25:47.550 に答える
0
var confirmOnPage = function () {

   function del_cookie(name)
   {
       document.cookie = name + '=; expires=Thu, 01 Jan 1970 00:00:01 GMT;';
   }

};

window.onbeforeunload = confirmOnPage;

于 2013-10-10T12:57:17.200 に答える
0

Cookie の有効期限を設定しない場合、セッションで (つまり、ブラウザーを閉じたときに) 消去されます。

他のページに移動している場合、他のページの Cookie に問題は見られません。また、同じページに再度アクセスすると、同じタブが表示されるとします。

于 2012-09-17T14:44:05.037 に答える