关闭浏览器时退出登陆

关闭浏览器响应的js代码以下:javascript

head中调用jsjava

<script >ajax

 window.onunload = function(){浏览器

 if(self.screenTop > 9000) {异步

  Out();spa

 }对象

}事件

</script>ip

body中添加js方法以下:string

<script language="JavaScript" type="text/javascript"> 

function Out()

{ PageMethods.LogOut(GetResult);}

function GetResult(Result)

{  }

</script>

其中在后台添加方法:

  [WebMethod] 这个须要引用什么程序不知道

        public static string LogOut()

        {

            MembershipUser mu = Membership.GetUser();

   mu.LastActivityDate = mu.LastActivityDate.Subtract(new TimeSpan                                       (0,Membership.UserIsOnlineTimeWindow + 1, 0));

            Membership.UpdateUser(mu);

            return "true";}

总结:当用户点击关闭浏览器时(算是字,而不是按钮),利用ajax方法,异步调用后台的方法,让用户及时退出,这样在统计在线用户数量时,能获得准确的数字。

如下是对浏览器关闭事件的解释:

if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey)

{要在关闭窗口时触发一个事件,咱们会想到window对象提供了两个事件:onUnloaddocument被卸载触发)和onBerforUnload(被卸载前触发),由于它们是针对document的,当document被卸载或被卸载前触发。但这两个事件在刷新时也会触发,因此咱们要采用什么方法来屏蔽除了关闭窗口操做之外而触发的onUnloadonBerforUnload事件从而执行里面的操做呢? 下面是从网上搜到的和你们一块儿分享。 

<script> 

window.onunload = function(){if(self.screenTop>9000)alert('该窗口已经被关闭!')} 

</script> 

或 

<script> 

window.onunload = function(){if(self.screenLeft>9000)alert(该窗口已经被关闭!.')} 

</script> 

下面是对这两个window的属性的解释: 

window.screenTop 

获取浏览器客户区左上角相对于屏幕左上角的 坐标 

screenTop>后面的数字必须大于你显示分辩率中的高度 

好比,800*600, 这个数得大于600 

window.screenLeft 

获取浏览器客户区左上角相对于屏幕左上角的 坐标 

screenLeft>后面的数字必须大于你显示分辩率中的宽度 

好比,800*600, 这个数得大于800 

一般这两个值设为900

PageMethods 须要ScriptManager.EnablepageMethods="true"

相关文章
相关标签/搜索