如何在 Mozilla Firefox 3 上使用 Javascript 关闭窗口?

IT技术 javascript firefox
2021-01-22 09:43:10

我需要通过单击按钮关闭显示我的网页的选项卡。但是firefox不允许通过javascript关闭窗口,只要它不是由javascript打开的。如果我将 的值设置dom.allow_scripts_to_close_windows为“true”,那么即使是正常的window.close()能正常工作。但这不是一个好的解决方案。:(

我尝试了其中一个论坛中建议的以下解决方法:

<script language="javascript" type="text/javascript">
function closeWindow() {
   window.open('','_parent','');
   window.close();
}
</script> 

它应该让浏览器认为它实际上是由 javascript 打开的,但这在 Firefox 3 中不起作用。

任何人都可以提出解决方法吗?

6个回答
function closeWindow() {
    netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserWrite");
    alert("This will close the window");
    window.open('','_self');
    window.close();
}

closeWindow();
不适用于 firefox/chrome..Getting error : Uncaught ReferenceError: netscape is not defined
2021-04-10 09:43:10

出于安全原因,您的脚本无法关闭未打开的窗口/选项卡。

解决方案是在导航历史的较早点显示年龄提示。然后,您可以根据他们的输入选择是否允许他们进入您的网站。

您不必关闭显示提示的页面,而只需说“抱歉”,或者将用户重定向到他们的主页。

此代码适用于 IE 7 和最新版本的 Mozilla,尽管 mozilla 中的默认设置不允许通过 javascript 关闭窗口。

这是代码:

function F11() { window.open('','_parent',''); window.open("login.aspx", "", "channelmode"); window.close(); }

要更改默认设置:

1.在你的firefox地址栏中输入“about:config”并回车;

2.确保你的“dom.allow_scripts_to_close_windows”是真的

@AnindyaSengupta 也许你应该把它带到bugzilla.mozilla.org/show_bug.cgi?id=190515 中的Firefox 开发人员一些公司确实在他们的设置中启用了这个标志。
2021-03-26 09:43:10
我不能去告诉使用该网站的用户执行这些步骤:(
2021-04-01 09:43:10

self.close() 不起作用,您确定要关闭窗口而不是脚本生成的弹出窗口吗?

你们可能想看看这个:https : //bugzilla.mozilla.org/show_bug.cgi?id=183697

从用户体验的角度来看,您不希望被动地完成重大操作。

像关闭窗口这样的重大事件应该是用户操作的结果。

如果他们点击否,您可以重定向到 www.disney.com 或其他内容。
2021-03-14 09:43:10
该网页包含露骨内容。因此,如果他/她 18 岁或不打算进入网站,用户将可以点击一个按钮。
2021-03-15 09:43:10
虽然有更好的方法来完成同样的事情,但你不必为这样的事情打开一个全新的窗口。
2021-04-08 09:43:10