1

以下の関数は IE では問題なく動作しますが、Mozilla やその他のブラウザでは動作しません

   function CloseSession() {        
     alert("Inside Close");  
      if ((window.event.clientX < 0) || (window.event.clientY<0)) {  
        alert("Inside Events");  
        location.href = '/forms/sessionkill.aspx';  
      }    
   }

私がやろうとしているのは、そのボタンをクリックした後にページにボタンがあり、ページがセッションを持つ新しいウィンドウで開かれ、ユーザーがブラウザを閉じるまでセッションが維持されることです。新しいページには、ページごとに異なるリンクを持つ正しいナビゲーションがあります。sessionkill.aspx を直接呼び出すと、ウィンドウのアンロード機能でリンクがクリックされるたびにセッションが強制終了されます。

4

1 に答える 1

1

window.eventMozilla はグローバルプロパティを設定しません。

JQuery (または Microsoft AJAX) などの AJAX フレームワークを使用することをお勧めします。

function CloseSession(event) {   
  // use Mozilla event parameter, or window.event if that was not passed     
  event = event || window.event; 
  alert("Inside Close");  
  if ((event.clientX < 0) || (event.clientY<0)) {  
    alert("Inside Events");  
    location.href = '/forms/sessionkill.aspx';  
  }    
}

更新: JQuery を使用していた場合:

function CloseSession(e) {   
  alert("Inside Close");  
  if ((e.pageX < 0) || (e.pageX < 0)) {  
    alert("Inside Events");  
    location.href = '/forms/sessionkill.aspx';  
  }    
}
于 2009-05-28T11:52:48.540 に答える