程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> .NET實例教程 >> 關於關閉IE清空session的總結

關於關閉IE清空session的總結

編輯:.NET實例教程
關於這個需求我想不管是大項目還是小項目都是必要的,網上問的人也比較多,同樣我也遇到了這樣的需求,查閱了不少這方面的資料。然後通過實踐,總結了一下。
鼠標點擊X窗口關閉IE的同時清空session,最基本的就是處理用戶重復登陸需要用到,我想這個的關鍵在於如何捕捉到關閉IE這個動作,之後再根據自身的需要使用session.invalidate()或者session.removeAttribute( "xxx ")都是水到渠成的事情。
下面我們就重點看看如何捕捉這個動作:
首先現在的系統的頁面結構一般分為2種,框架的和非框架的。
框架的:
<script language="JavaScript">
function removeline(){
 
if(event.clientX<0&&event.clIEntY<0){
 alert("我進入了removeline方法啦,說明捕捉有效!");
 document.write(''<iframe width="100" height="100" src="XXX.JSP"></iframe><OBJECT classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 id=WebBrowser width=0></OBJECT>'');
       document.all.WebBrowser.ExecWB(45,1);
 }
}
</script>
 
然後只需要在frameset裡面調用該方法即可。
<frameset 。。。。。。。。。。。。。 onUnload="removeline();">
      
</frameset>
 
幾點注意之處:if(event.clientX<0&&event.clientY<0)這個條件沒有對alt+F4關閉IE進行捕捉,如果想添加,要改成if((event.clientX<0&&event.clIEntY<0&&) ||event.altKey)
Removeline方法中的XXX.JSP是你寫具體如何清楚session的頁面。
 
非框架的:
  對於非框架的的處理和框架的會有所不同,實現方法如下;
 <script language="Javascript">
     
      function window.onunload(){
      if((window.screenLeft>=10000 && window.screenTop>=10000)||event.altKey)
      {
        alert("識別到關閉IE啦!!!");   
 }
      }
    
      </script>
 
By The Way:最後我想說的是,建議系統使用框架的頁面結構,這樣做的好處很多了,單就權限而言也有不少有利之處。
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved