页面退出时弹出框

CJ *_*lti 5 javascript popup

我想要做的是在页面退出或导航离开时随时弹出一个弹出框.现在我有

<script type="text/javascript">
function box()
{
    var r=confirm("Message");
    if (r==true)
    {
        window.location.href="yes.html";
    }
    else
    {
        window.location.href="no.html";
    }
}
</script>


<body onunload="box();">
Run Code Online (Sandbox Code Playgroud)

我有2个问题:

  1. 如果您实际离开页面,刷新,新URL等,它仅显示该框.如果您退出选项卡或浏览器,则框不会弹出.

  2. 无论你按什么按钮,它都会把你发送给你原本想去的地方,它永远不会把你送到no.htmlyes.html.

有人能告诉我这是怎么回事吗?

Gle*_*lar 8

试试这个:

<script type="text/javascript">
  window.onbeforeunload = confirmExit;
  function confirmExit()
  {
      setTimeout(function() {
        setTimeout(function() {
           window.location.href="yes.html";
        }, 1000);
    },1);
    return "Message";
  }
</script>
Run Code Online (Sandbox Code Playgroud)

您只能抓住页面上的停留选项,您无法覆盖离开页面的用户.类似于:如何知道用户是否点击了Javascript onbeforeunload对话框上的取消?