nat*_*h3z 3 javascript firefox internet-explorer-8 internet-explorer-7 internet-explorer-6
假设,我想要一个链接或按钮,当用户单击它时,将关闭浏览器而不显示任何确认对话框.
它需要在Internet Explorer 6,7,8和Firefox中工作.
nat*_*h3z 13
我做了一些研究,发现如果没有通过javascript打开窗口/标签,或者如果标签页的历史页> 1,则无法关闭Firefox中的窗口/标签(即,因为浏览网页,后退按钮可以点击).
Firefox中的方法:首先删除历史记录.然后你可以关闭窗口没有确认框.我没试过这个解决方案.我碰巧阅读了多个描述如何执行此操作的可靠页面.
Internet Explorer 6,7,8的解决方案.
在浏览器检测功能的帮助下:http://www.quirksmode.org/js/detect.html,这里是如何在没有确认框的情况下为多个IE版本关闭窗口.
if ((userBrowser.browser == "Explorer" && (userBrowser.version == "8" || userBrowser.version == "7"))) {
window.open('', '_self', '');
window.close();
} else if ((userBrowser.browser == "Explorer" && userBrowser.version == "6")) {
window.opener = null;
window.close();
} else {
window.opener = '';
window.close(); // attempt to close window first, show user warning message if fails
alert("To avoid data corruption/loss. Please close this window immedietly.");
}
Run Code Online (Sandbox Code Playgroud)
我知道有些人可能认为使用浏览器检测不是一个好主意.此外,许多人认为强迫用户关闭窗口是件坏事.我同意这些想法.但是,我只是需要它,因为我们被要求做软件要求.
希望这可以帮助.
| 归档时间: |
|
| 查看次数: |
51317 次 |
| 最近记录: |