我正在将一个工作的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的函数中被调用,我认为我不需要发布该代码。
答案 0 :(得分:0)
我遇到完全相同的问题,解决方法是不使用
window.open("yourUrl")
,而是使用仅为浏览器扩展提供的方法
browser.windows.create({url: ""yourUrl""});
使用此解决方案,您可以确保任何弹出窗口阻止程序都不会阻止您的事件页面。
答案 1 :(得分:0)
它对我有用,没有双“”:
browser.windows.create({url: yourUrl});