【问题标题】:How to close a window without confirm dialog?如何在没有确认对话框的情况下关闭窗口?
【发布时间】:2009-11-25 09:38:27
【问题描述】:
window.close();

上面每次都会弹出一个确认对话框,在Firefox中根本不起作用。

【问题讨论】:

    标签: javascript firefox window


    【解决方案1】:

    这样使用

    window.open('','_self');
    window.close(); 
    

    【讨论】:

    • 这也是我为 IE 做的方式,效果很好。不适用于 FireFox。
    【解决方案2】:

    我认为这不是没有原因的。人们不喜欢在没有通知的情况下关闭窗户。

    【讨论】:

      【解决方案3】:

      关闭浏览器窗口不像几年前那么简单了。

      通常,在以下情况下可以关闭新打开的窗口:
      1. 在窗口本身的 DOM 中调用“关闭”
      2. 越近越开窍

      但是,几乎所有浏览器都有选项卡,如果打开的窗口是主窗口中唯一剩余的选项卡,它可能不会在没有提示上述情况 1 的情况下关闭。即使它关闭,它也可能只是关闭选项卡并离开主窗口打开。

      【讨论】:

        【解决方案4】:

        您不能 - 这是一项安全功能。如果您希望能够关闭它,您需要考虑显示某种形式的模式对话框。看看This JQuery Example 之类的东西,它具有自动关闭功能

        【讨论】:

          【解决方案5】:

          没有被 JavaScript 打开的窗口不能用 JavaScript 自动关闭(我想不出任何好的理由让网站关闭访问者到达网站的窗口,在此过程中丢弃他们的返回历史记录)

          【讨论】:

            【解决方案6】:

            它在 chrome 中工作,firefox 需要打开“allowjavascriptclosewindow”选项。 即需要将您的代码更改为: window.open("","_self"); 窗口.close();

            【讨论】:

              【解决方案7】:

              下面的 javascript 可以很好地在用户确认的情况下关闭标签。

              <script>
              function closeWindow()
                {
              if (confirm('Are you sure you want to close the Window? All the unsaved data will be lost')) {
              top.window.open('','_self','');
              top.window.close();       
              } 
              }
              </script>
              

              【讨论】:

                猜你喜欢
                • 1970-01-01
                • 1970-01-01
                • 2016-03-24
                • 2019-09-03
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                • 1970-01-01
                相关资源
                最近更新 更多