如何从greasemonkey脚本中关闭firefox选项卡?

时间:2008-12-01 09:13:05

标签: javascript firefox greasemonkey

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

window.close();

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

是否有解决此问题的方法?

3 个答案:

答案 0 :(得分:22)

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

步骤:

  1. 转到地址栏并输入 about:config
  2. 转到参数 dom.allow_scripts_to_close_windows
  3. 将其值设为 true
  4. 现在您的脚本可以使用'window.close()'

    关闭TAB

    <强> 例如

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

答案 1 :(得分:4)

由于Firefox使用与外部网站上的脚本代码相同的特权来处理Greasemonkey代码,因此不能仅允许Greasemonkey代码关闭窗口,而不能关闭常规脚本。

答案 2 :(得分:1)

现在,某些 -monkies 允许使用 @grant 选项来正式解锁 window.close()之类的命令到 about:config 。例如,在Tampermonkey中:

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

(后一个 grant 允许您将浏览器重新聚焦在窗口上。) 这样可以消除错误。