我第一次開發Chrome擴展,並且我有一個內容腳本,每次單擊擴展圖標時我都會觸發,然後在再次單擊圖標時將其關閉,依此類推。我想知道有沒有人可以幫助我?以下是我到目前爲止的代碼。將Google Chrome擴展程序「關閉」和「打開」?
manifest.json的
{
"manifest_version": 2,
"name": "ROTATE",
"description": "This extension will do unspeakable deeds of great importance.",
"version": "1.0",
"browser_action": { },
"icons": { "16": "icon16.png",
"48": "icon48.png",
"128": "icon128.png"
},
"background": {
"scripts": ["background.js"]
},
"content_scripts": [
{
"matches": ["<all_urls>"],
"js": ["content.js"]
}
],
"permissions":
["activeTab"]
}
content.js
['', '-ms-', '-webkit-', '-o-', '-moz-'].map(function(prefix){
Array.prototype.slice.call(document.querySelectorAll('div,p,span,img,a,body')).map(function(el){
el.style[prefix + 'transform'] = 'rotate(' + (Math.floor(Math.random() * 10) - 1) + 'deg)';
});
});
background.js
(我知道有一個更好的方式來做到這一點,使用信息但我無法弄清楚,再加上,這實際上是不會將頁面恢復到正常狀態。)
r toggle = false;
chrome.browserAction.onClicked.addListener(function(tab) {
toggle = !toggle;
if(toggle){
chrome.tabs.executeScript(tab.id, {file:"content.js"});
}
else{
chrome.tabs.return;
}
});
我將不勝感激任何形式的幫助。謝謝!
編輯:仍歡迎任何反饋!謝謝!
我想你的消息傳遞方式,它似乎並沒有工作... – ooohfff
@ooohfff我在代碼中的輕微錯字。除此之外,它對我來說很好。你能澄清「它似乎不工作」? – Teepeemm
你是對的,我發現並修復了你的錯字,現在它能正常工作。謝謝! – ooohfff