我想弄清楚如何編寫一個簡單的Chrome擴展,它允許將網頁從一個字母音譯到另一個字母。不幸的是,谷歌關於Chrome擴展的文檔對於初學者來說非常混亂。我在這裏看到很多類似的問題,f.ex. Replace text in website with Chrome content script extension,但仍然不清楚。在試運行中,我試圖用「Z」替換頁面中的所有「a」。用Chrome擴展替換網頁上的符號
這裏是我的manifest.json:
{
"name": "My Chrome extension",
"version": "0.1",
"browser_action": {
"default_icon": "icon.png"
},
"permissions": [
"tabs", "http://*/*", "https://*/*"
],
"content_scripts": [{
"matches": ["http://*/*", "https://*/*"],
"js": ["myscript.js"]
}]
}
Myscript.js:
chrome.browserAction.onClicked.addListener(function(tab) {
chrome.tabs.executeScript(
null, {code:"document.body.innerHTML = document.body.innerHTML.replace(new RegExp("a", "g"), "Z")"});
});
但這無法工作。如果我只包括一行到Myscript.js:
document.body.innerHTML = document.body.innerHTML.replace(new RegExp("a", "g"), "Z");
那麼所有的「A」字母會被替換成「Z」,只要在頁面加載,但是這不是我的目標,我想它只在按下分機按鈕後才起作用。
任何幫助將非常感激。
警告:使用'document.body.innerHTML = ...'將刪除所有現有的事件偵聽器以及非屬性屬性。 – 2012-03-17 09:16:13