0
我試圖切換我的pageAction的圖標。這是我使用的代碼:Chrome擴展程序pageAction.setIcon不可靠
var activated = new Boolean();
chrome.pageAction.onClicked.addListener(function(tab) {
if(!activated){
chrome.pageAction.setIcon({tabId: tab.id, path: 'icons/expanded.png'});
activated = true;
alert("activated");
}else{
chrome.pageAction.setIcon({tabId: tab.id, path: 'icons/expand.png'});
activated = false;
alert("not activated");
}
});
雖然這工作的大部分時間,有時它報告了變化的狀態,但不切換圖標。 有人知道爲什麼會發生這種情況嗎?
通過導航或使用'history.pushState/replaceState' API,選項卡的位置是否更改?這會導致圖標消失。 – 2013-05-05 19:09:52
這不是問題,圖標不會消失,有時按它時它不會更改爲其他圖像 – Niek 2013-05-06 14:09:55
即使您點擊兩次...?很可能默認的「激活」狀態與相應的圖標路徑不匹配。您必須記住每個選項卡的狀態而不是全局狀態。 – 2013-05-06 14:11:52