window.open在firefox扩展中的background.js?

时间:2018-02-26 06:35:59

标签: javascript firefox-addon

我正在将一个工作的chrome扩展转换为firefox扩展。在扩展中,它调用background.js中的window.open()。但是,它不能在我的firefox版本中运行,而且我已经测试过其他一切都运行正常,而且它不是window.open'ing。

我在网上看到这可能是由于安全问题?如何调整安全设置以便能够运行,如何通知用户?

的manifest.json

{
"manifest_version": 2,
"name": "Instagram Liker",
"description": "Instagram Liker",
"version": "1",
"icons": {
    "16": "icon16.png",
    "48": "icon48.png",
    "128": "icon128.png"
},
"content_scripts": [
    {
        "matches": [
            "<all_urls>"
        ],
        "js": [
            "js/custom.js"
        ]
    }
],
"background": {
    "scripts": [
        "js/background.js"
    ]
},
"browser_action": {
    "default_popup": "popup.html"
}

}

window.open刚刚在background.js的函数中被调用,我认为我不需要发布该代码。

2 个答案:

答案 0 :(得分:0)

我遇到完全相同的问题,解决方法是不使用

window.open("yourUrl")

,而是使用仅为浏览器扩展提供的方法

browser.windows.create({url: ""yourUrl""});

使用此解决方案,您可以确保任何弹出窗口阻止程序都不会阻止您的事件页面。

答案 1 :(得分:0)

它对我有用,没有双“”:
browser.windows.create({url: yourUrl});