我有一个包含这一行代码的greasemonkey用户脚本......

window.close();

但 Firefox 不允许用户脚本关闭窗口(如错误控制台中的错误消息所报告)

有解决这个问题的方法吗?

有帮助吗?

解决方案

您需要更改 Firefox 的配置设置 (about:config) 才能允许此操作。

脚步:

  1. 转到地址栏并输入 关于:配置
  2. 转到参数 dom.allow_scripts_to_close_windows
  3. 将其值设置为 真的

现在您的脚本可以使用“window.close()”关闭选项卡

例如。

function closeTab(){
    window.open('', '_self', '');
    window.close();
} 

其他提示

由于Firefox把Greasemonkey的代码具有相同的privilages为外部网站上的脚本代码,它不可能只允许Greasemonkey的代码能够关闭该窗口,但不正规的脚本。

通过现在的一些 -monkies 允许使用 @grant 选项正式解锁像 window.close()的命令,而无需去的至关于:配置。例如,在 Tampermonkey

// @grant window.close
// @grant window.focus

(后者的捐赠的让你重新集中你的窗口上的浏览器。) 这将消除错误。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top