Nik*_*Nik 5 javascript onbeforeunload javascript-events
好吧,我有以下代码的问题.当用户关闭浏览器时,它应该提示他们单击"确定"或单击"取消"退出页面.单击"确定"将触发window.location以重定向到另一个页面以进行用户跟踪(是的,为避免火焰战争,如果用户从任务管理器中删除浏览器,则会有一个辅助系统来确保准确跟踪(如类似问题所述)).CANCEL将保留在页面上,问题在于无论您点击什么按钮,都会被重定向,就好像您想要离开页面一样.相关代码如下.
window.onbeforeunload = confirmExit;
function confirmExit()
{
var where_to = confirm("Click OK to exit, Click CANCEL to stay.");
if (where_to == true)
{
window.location="logout.php";
}
if (where_to == false){
alert("Returning...");
}
}
Run Code Online (Sandbox Code Playgroud)
这onbeforeunload不起作用.关联的函数应返回一个字符串,该字符串依次显示在默认onbeforeunload对话框中.
function confirmExit() {
return "This message will appear in the dialog.";
}
Run Code Online (Sandbox Code Playgroud)
但是你没有归还任何东西并且用自己的手拿它confirm().当函数没有返回任何内容时,onbeforeunload根本不会显示该对话框.
要调用真正的注销,您需要使用该onunload事件.这是一个重写:
window.onbeforeunload = confirmExit;
window.onunload = logout;
function confirmExit() {
return "Click OK to exit, Click CANCEL to stay.";
}
function logout() {
window.location = 'logout.php';
}
Run Code Online (Sandbox Code Playgroud)
然而,你是否依赖于webbrowser,是否最后一次实际命中服务器.大多数(如果不是全部)网络浏览器都没有.我宁愿火对URL的请求ajaxical,但你依赖于WebBrowser控件,以及它是否会工作得很好.
| 归档时间: |
|
| 查看次数: |
5775 次 |
| 最近记录: |