gpt4 book ai didi

opera - 为什么在 Opera 中,指定的扩展 ID 不允许使用 'chrome_url_overrides'?

转载 作者:行者123 更新时间:2023-12-01 03:21:50 28 4
gpt4 key购买 nike

我正在制作一个跨浏览器扩展,它覆盖了标准的“新标签”页面。

有一个manifest.json key ,称为 chrome_url_overrides :

"chrome_url_overrides": { "newtab": "index.html" }

它适用于 Chrome 和 Firefox !但是在 Opera (45.0) 中,当我尝试加载扩展时出现以下错误:

'chrome_url_overrides' is not allowed for specified extension ID.



基于我在 MDN chrome_url_overrides docs 中读到的内容, Opera 支持。

现在我不确定 Opera 是否一般不允许这样做,或者是否有办法激活它?

编辑 : 我找到了一个 similar, unanswered yet, 3-months-old thread在 Opera 论坛中。

最佳答案

其实Opera现在正式不支持 chrome_url_overrides .可以在 MDN page that you referenced 上找到证据。并得到了 Opera 代表的确认 in their forum .

在 Opera 中实现新选项卡扩展的潜在解决方法(实际上这也适用于其他浏览器)是使用具有以下代码的后台脚本:

const redirectURLS = [
"opera://startpage/",
"browser://startpage/",
"chrome://startpage/"
];

chrome.tabs.onCreated.addListener(function(tab) {
for (let i = 0; i < redirectURLS.length; i++) {
if (tab.url === redirectURLS[i]) break; // user is trying to open startpage
if (i == redirectURLS.length - 1) return; // Tab is not trying to open a startpage
}
chrome.tabs.update(tab.id, { url: "index.html" });
});

这样做将检查用户是否尝试打开一个新选项卡,如果是这种情况,它将打开安装插件附带的自定义 index.html 页面。这是一个笨拙而肮脏的,不确定它是否会被 Opera 接受,但对于那些拼命试图在其他 Opera 插件中获得新标签扩展的人来说,这可能是一条救赎之路。

趣闻: Opera 开发并分发了一个插件,它可以帮助您从 Opera 上的 chrome 扩展商店安装 chrome 扩展,但新的标签扩展不起作用并在安装时失败并显示以下消息:

[Compatibility notice] Please, be aware that this extension requires APIs that are not supported in Opera. It still can work in Opera, so complete installation to verify.

关于opera - 为什么在 Opera 中,指定的扩展 ID 不允许使用 'chrome_url_overrides'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44635013/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com