我玩弄了一些鍍鉻的擴展,我發現這個例子:http://src.chromium.org/viewvc/chrome/trunk/src/chrome/common/extensions/docs/examples/api/pageAction/pageaction_by_url/如何讓頁面動作出現在特定頁面上?
一切工作正常,但我想創建自己的擴展,我想看看在特定網站上的page_action圖標,而不是那些以'克'在他們的網站。 所以,我想簡單地從該改劇本:
// Copyright (c) 2011 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// Called when the url of a tab changes.
function checkForValidUrl(tabId, changeInfo, tab) {
// If the letter 'g' is found in the tab's URL...
if (tab.url.indexOf('g') > -1) {
// ... show the page action.
chrome.pageAction.show(tabId);
}
};
// Listen for any changes to the URL of any tab.
chrome.tabs.onUpdated.addListener(checkForValidUrl);
進入這個:
chrome.pageAction.show(tabId);
但現在不工作... 我不明白這一點。很明顯,我可以使用解決方法,但這不是重點......首先,我必須創建一個後臺頁面來執行此操作嗎?我想是的,但我不明白爲什麼,爲什麼.show方法不能單獨工作? 我嘗試了谷歌文檔和材料中進行搜索,但我找不到任何有用的東西我不是專家,這一直是我的第一天下午在谷歌擴展度過的,但我應該怎麼知道「chrome.page.show (tabId)「必須放在後臺頁面,如果它沒有寫在任何地方?沒有意圖批評,但你們是怎麼找到的?所有的chrome方法都必須放在後臺頁面中? 那麼,肯定會有更多的問題,那麼它的合法性。希望你能給我至少一個答案!
你給它一個有效的'tabId'? – abraham 2012-02-12 00:19:24