有没有办法在没有收到提示的情况下使用js完全关闭浏览器窗口? 我的意思是用户打开的浏览器窗口而不是弹出窗口或其他任何东西
答案 0 :(得分:3)
没有。基本上,只有脚本打开的窗口可能会被脚本关闭。尝试这样做(使用命令window.close()
)会导致错误Scripts may not close windows that were not opened by script.
这是有充分理由的。如果任何脚本可以关闭任何窗口,恶意代码可以通过在后台窗口中加载假页面然后关闭主窗口,轻松地将假页面替换为合法页面。
一般来说,尝试强制控制通常属于用户域的任何操作都是不好的做法。这包括滚动条,整体字体大小,确认窗口(用于打印,保存,关闭),打开窗口的大小和状态等等。
答案 1 :(得分:1)
简短的回答是否定的。通常,所有浏览器都有配置允许JavaScript代码执行操作的机制 - 关闭窗口和/或调整大小是其中之一,默认设置为提示(关闭)和拒绝调整大小。因此,除非用户专门配置了不同的级别,否则您将无法避免提示。
答案 2 :(得分:0)
关闭窗口的唯一代码是window.close()。除此之外,你还需要像插件一样优越的优势。
答案 3 :(得分:0)
window.close()
将关闭当前标签,如果它是浏览器的最后一个标签,可能也会关闭整个浏览器窗口。