bounty将在4天内过期。回答这个问题有资格获得+200声誉奖励。FMaz008希望引起更多关注这个问题:我可以确认这是一个问题。Firefox for Android在扩展弹出窗口打开之前不会运行content_scripts。我也在寻找一个解决方案,以确保页面加载时运行我的content_scripts。
我创建了一个附加组件,它可以根据用户在附加组件的“弹出窗口”中选择的设置来操作特定网站的HTML(设置保存在“Chrome.storage. local”中,我只是从Chrome移植了我的代码,它工作了)。
当用户打开一个特定的网站时,附加组件应该运行一个连续的(间隔)内容脚本来更改HTML,问题是它没有,它需要用户加载网站,然后打开附加组件“弹出”,然后返回到网站,然后脚本开始工作。
我该如何解决这个问题?当用户打开网站时,我该如何让脚本运行?这只在android上存在问题,而不是Chrome或桌面Firefox
这是清单json-
{
"name": "9gag post filter",
"description": "A post filter for 9GAG.com",
"version": "1.1.2",
"browser_specific_settings": {
"gecko": {
"id": "[email protected]",
"strict_min_version": "42.0"
}
},
"manifest_version": 3,
"permissions": [
"storage"
],
"action": {
"default_popup": "index.html"
},
"content_scripts": [{
"css": ["assets/css/content.css"],
"js": ["assets/js/jquery_slim_mini.js","assets/js/content.js"],
"matches": ["https://9gag.com/*"]
}]
}
字符串
the whole source code(开源)
1条答案
按热度按时间qfe3c7zg1#
我找到的唯一解决方案是编辑清单并返回Manifest v2(使用mv2示例,如旧的the Beastify demo)。当然,这不太理想,因为它破坏了与基于Chromium的浏览器的兼容性,但我想值得一提。