![](/img/trans.png)
[英]how to detect back button of browser in jquery and if any dialogue is open close it?
[英]How to open a Jquery Dialogue Box on browser tab close click event
我有一个特殊的要求,我需要在访问者单击取消浏览器选项卡后立即打开一个jquery对话框。实际上,此对话框将包含一些调查问题。 如果访问者希望参与调查,可以单击“对话框”中的“关闭”按钮。否则,网站的“浏览器”选项卡应自动关闭。
我是jquery的新手,我尝试从Web上获得一些帮助,但没有运气。
如果我在这里得到建议,我将得救。 提前致谢..
这是我在答案后尝试但未收到任何警告框的代码。
<!DOCTYPE html>
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="js/jquery-1.7.1.js" type="text/javascript"></script>
<script type="text/javascript">
$( window ).unload(function() {
alert( "Bye now!" );
});
</script>
</head>
<body>
</body>
您可以在jQuery中使用unload
事件,例如:
$( window ).unload(function() {
console.log( "Bye now!" );
});
当用户离开页面导航时,发生卸载事件。
在以下情况下触发卸载事件:
单击离开页面的链接,然后在地址栏中键入新URL,使用前进或后退按钮关闭浏览器窗口,然后重新加载页面。unload()方法指定发生卸载事件时发生的情况。
unload()方法只能在window对象上使用。
注意:卸载事件在不同的浏览器中可能会有所不同。 使用前,请确保在所有浏览器中测试此方法。
如果您希望仅用于关闭窗口而不用于链接导航的 jQuery卸载事件,请参考: 仅用于关闭窗口而不用于链接导航的jQuery卸载事件
更新资料
请试试:
$(window).on('beforeunload ',function() {
return 'Are you sure ?';
});
这是简单的解决方案,请尝试一次。
<script type="text/javascript" src="http://code.jquery.com/jquery-2.1.0.min.js"></script>
<script type="text/javascript">
var validNavigation = false;
function wireUpEvents() {
window.onbeforeunload = function() {
if (!validNavigation) {
return "Bye";
}
}
$(document).keydown(function(e) {
if (e.keyCode == 116){
validNavigation = true;
}
});
$("a").bind("click", function() {
validNavigation = true;
});
$("form").bind("submit", function() {
validNavigation = true;
});
$("input[type=submit]").bind("click", function() {
validNavigation = true;
});
}
$(document).ready(function() {
wireUpEvents();
});
</script>
<body>
<h1>Hi Five</h1>
<a href="">hash</a>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.