1

在我的 background.js 中,我使用以下代码让我的 pageAction 扩展显示在 Amazon.com 上

function checkForValidUrl(tabId, changeInfo, tab) {
  if (tab.url.indexOf('amazon.com') > -1) {
    chrome.pageAction.show(tabId)   
    chrome.pageAction.onClicked.addListener(function(tab) {
    chrome.tabs.executeScript(tab.id, {file: "bookmarklet.js"})
});
}
};
chrome.tabs.onUpdated.addListener(checkForValidUrl);

我将如何更改代码以便扩展将显示在 amazon.com 和 google.com 页面上?

谢谢。

4

1 回答 1

0
  • 您只需要设置chrome.pageAction.onClicked.addListener一次处理程序,这样的代码就会遇到麻烦。
  • urlchangeInfo 的成员是可选的,在某些情况下可能不存在
  • 在某些情况下,您检查亚马逊可能会失败。例如对于网址http://google.co.uk?q=amazon.com。先用正则表达式解析url。是可能的解决方案之一

解析url的示例代码

var host = parseURL(tab.url).host;
if (host.indexOf("amazon.com") >= 0 || host.indexOf(".google.") >= 0) {
  // handle these pages
}
于 2013-09-20T06:05:15.703 回答