0

我有一个退出弹出 js 函数,当有人试图离开页面时,它会显示一个警报并在 url 中添加一些内容(并重定向)。

警报显示在所有浏览器中,但代码:

window.location.href = "?p=exit" 

不在 Chrome 和 IE 中执行。

它在 Firefox 中运行良好。当您重新加载页面时,会显示警报并修改 url。

看看源代码,很简单。

代码:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<script type="text/javascript">
var exit=true;
    function confirmExit()
            {
            if(exit)
            {
            window.location.href = "?p=exit";
            }
            if(exit)
            return "Wait! Don't Leave Empty Handed!\n\nThank you for taking the time to check out our offer! Before you go we have a complimentary crash to help you succeed. Click the 'Cancel' or 'Stay On This Page' button if you're interested!";
            }
</script>
</head>
<body  onbeforeunload="return confirmExit()">
</body>
</html>
4

1 回答 1

1
  • 您不能(跨浏览器)从“onbeforeunload”重定向。
  • Chrome 会阻止在“onbeforeunload”中设置的警报。

查看此答案以获取更多信息: https ://stackoverflow.com/a/7080331/353710

于 2012-04-20T08:04:47.067 回答