function window.onunload() {
if ((window.screenLeft >= 10000 && window.screenTop >= 10000) || event.altKey) {
alert(window.screenLeft+","+window.screenTop);
//用戶非正常關閉時需要觸發(fā)的動作
location = 'Handler1.ashx';
}
}
script>
Handler1.ashx:
代碼如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;
using System.Web.SessionState;
namespace WebApplication1
{
///
/// $codebehindclassname$ 的摘要說明
///
[WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Handler1 : IHttpHandler,IRequiresSessionState
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Session.Abandon();
context.Session.Clear();
}
public bool IsReusable
{
get
{
return false;
}
}
}
}
解釋:
一般的會員形式的網(wǎng)站,在會員登陸后都會建立會話或者Cookie,然后需要在會員退出時點退出連接或按紐退出。在會員直接關閉窗體的時候,沒有觸發(fā)涉及到退出的一系列退出。而這些要等到服務器會話過期才會被清除掉。
有幸的是在網(wǎng)絡上終于找到可以捕獲用戶使用Alt+F4、標題欄按右鍵關閉、雙擊標題欄、直接按關閉按鈕的事件的方法。當然對于最小化到任務欄再進行關閉是不能捕獲的。
代碼如下:
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com