用网页覆盖 Chrome 新标签页?

Kev*_*vin 6 google-chrome-extension

Google Chrome 扩展程序是否有一种干净的方法将非本地网页设置为新标签页,同时保持多功能框清除或突出显示?

扩展清单中的chrome_url_overrides.newtab 选项仅允许本地 HTML 页面。

现在,我看到两个选择:

  1. iframe 本地扩展页面中的网页。然而,许多网站在 iframe 时无法正常工作。
  2. 将本地新标签页重定向到网页。然而,这并不能可靠地突出显示多功能框,因此用户必须在键入之前手动将焦点设置到多功能框,这是一种很差的用户体验。

理想的解决方案将使网页保持在新标签页的顶部框架,并且多功能框将被清除或突出显示。

附加信息:

Kev*_*vin 5

目前来看,这不太可能。我已针对 Chrome 扩展程序提出了功能请求,以更好地支持此用例。

同时,两个选项是:

  1. 在本地扩展新标签页上,为网页创建一个iframe。

  2. 在扩展程序后台脚本中,监听新选项卡的创建并更新网站的 URL。这看起来像:

    // background.js
    
    // Listen for new tabs.
    chrome.tabs.onCreated.addListener(function (tab) {
    
      // Only redirect if this is a blank new tab (not opened by clicking a link).
      if (tab.url === 'chrome://newtab/') {
    
        // Show your website. This might highlight the omnibox,
        // but it's not guaranteed.
        chrome.tabs.update(tab.id, {url:'https://example.com'});
      }
    });
    
    Run Code Online (Sandbox Code Playgroud)

    正如问题中所指出的,这在过去不可靠地突出显示了 URL。截至目前,URL 突出显示已损坏(Chrome 稳定版 v61),但应在 v62 中修复