如何为pageAction添加点击?

use*_*893 5 google-chrome-extension

第一次延期 - 请善待.

我的目标是在用户访问特定域的页面时提供一个选项,以提供启动另一个页面的选项,该页面使用部分访问页面的域名作为变量.

下面的代码执行我想要的但它不提供操作作为选项 - 它只是执行.

当访问与域匹配的页面时,它会向地址栏添加一个图标.我希望只有当用户点击该图标时才会加载调用的新页面.如果那是不可能的,请提出替代方案.

谢谢!

function checkForValidUrl(tabId, changeInfo, tab) {

  if (tab.url.indexOf('.foo.com') > -1) {

    chrome.pageAction.show(tabId);
    var myName = tab.url.split(".")[0].slice(7);

    if (myName != "www"){ //ignore main site

    chrome.tabs.update(tab.id, {url: "http://foo.com/foo.html?t=" + myName});
    }

  }
};

chrome.tabs.onUpdated.addListener(checkForValidUrl);
Run Code Online (Sandbox Code Playgroud)

Bea*_*ist 11

你只需要使用chrome.pageAction.onClicked.例如:

function checkForValidUrl(tabId, changeInfo, tab) {
  if (tab.url.indexOf('.foo.com') > -1) 
    chrome.pageAction.show(tabId);
};

chrome.tabs.onUpdated.addListener(checkForValidUrl);

chrome.pageAction.onClicked.addListener(function(tab){
  var myName = tab.url.split(".")[0].slice(7);
  if (myName != "www") //ignore main site
    chrome.tabs.update(tab.id, {url: "http://foo.com/foo.html?t=" + myName});
});
Run Code Online (Sandbox Code Playgroud)