【问题标题】:Not allowed to load local resource when opening chrome:// UI page from a chrome extension无法使用 MV3 Chrome 扩展打开 chrome://extensions/shortcuts,我应该删除该功能吗?
【发布时间】:2021-12-19 23:11:12
【问题描述】:

我有一个 MV2 Chrome 扩展程序,我在弹出页面上添加了一个“快捷方式”链接,以便用户可以通过单击访问chrome://extensions/shortcuts

但是,升级到 MV3 后,链接失效了。

我应该简单地删除此功能吗?

【问题讨论】:

    标签: google-chrome-extension chrome-extension-manifest-v3


    【解决方案1】:

    您可以通过以编程方式打开页面来解决此问题。

    1. 在链接中添加一些合适的选择器(弹出 html):
    <a href="#" id="commands-link">Configure Commands</a>
    
    1. 添加事件监听器以打开快捷方式页面(在弹出脚本中):
    // get the DOM node
    const link = document.getElementById("commands-link");
    
    // add click event handler that opens the shortcuts page
    link.addEventListener('click', () => chrome.tabs.create({
        url: "chrome://extensions/configureCommands"
    }));
    

    【讨论】:

    • 谢谢,但为什么第一种方法会对 chrome 生态系统造成任何伤害?只是想知道为什么谷歌会成功。你有什么线索吗?c
    • 我没有任何官方答案,但我怀疑在处理不同的协议时,它可能默认只允许特定的协议(而不是阻止特定的协议),并且 chrome-protocol 不在此允许列表中.
    猜你喜欢
    • 1970-01-01
    • 2023-03-13
    • 2014-12-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-20
    • 1970-01-01
    • 2022-12-17
    相关资源
    最近更新 更多