chrome extension - 特定页面的页面操作

时间:2014-12-03 01:18:04

标签: javascript google-chrome-extension

我想使用pageAction api

为omni框添加自定义图标

https://developer.chrome.com/extensions/pageAction

如何仅针对特定网址/匹配模式执行自定义网页操作?是否可以针对特定网址注册事件?

示例,如果用户访问foobar.com执行自定义页面操作。对于其他页面,我不想做任何事情。

1 个答案:

答案 0 :(得分:1)

我认为PageStateMatcher就是你想要的。 Documentation这里。

,例如

  new chrome.declarativeContent.PageStateMatcher({
    pageUrl: { hostEquals: 'www.google.com', schemes: ['https'] },
    css: ["input[type='password']"]
  })

这是Chrome示例示例 Page action by URL 。检查PageStateMatcher部分。

// When the extension is installed or upgraded ...
chrome.runtime.onInstalled.addListener(function() {
  // Replace all rules ...
  chrome.declarativeContent.onPageChanged.removeRules(undefined, function() {
    // With a new rule ...
    chrome.declarativeContent.onPageChanged.addRules([
      {
        // That fires when a page's URL contains a 'g' ...
        conditions: [
          new chrome.declarativeContent.PageStateMatcher({
            pageUrl: { urlContains: 'g' },
          })
        ],
        // And shows the extension's page action.
        actions: [ new chrome.declarativeContent.ShowPageAction() ]
      }
    ]);
  });
});