1
比方說,我想要更改Chrome擴展中所選標籤的內容。我想用fly
替換每次出現的come
。在Chrome瀏覽器中選中標籤的內容中交換一些文字
如何動態更改單詞?
到目前爲止,我到達document
和replace
所有發生的單詞come
,但無法將更新的內容寫入選定的選項卡。
我寫的是;
chrome.tabs.getSelected(null,function(tab) {
updatedContent = document.replace(/come, 'fly');
});
我該如何做到這一點?
編輯:我的錯誤,document.replace不能正常工作。編輯2:用@Haibara Ai的建議我編輯爲;
chrome.tabs.query({active: true, currentWindow: true} ,function (tabs) {
chrome.tabs.executeScript(tabs[0].id, { code: 'document.body.outerHTML.replace(/come/g, "fly")' });
});
但是什麼也沒有發生。也沒有錯誤。
非常感謝你,但是當我在'window.onload = function(){}'中嘗試你的代碼時,它不起作用。並且給了我這個錯誤:'Uncaught SyntaxError:意外的標識符'在行'(tabs)=> chrome.tabs.executeScript(tabs [0] .id,{code:'document.replace(/ come,'fly');' });' – user6468132
@ user6468132,這只是一個示例代碼,您需要使用自己的'replace'方法,並且不要忘記處理報價和權限問題。 –
當我在'document.body.outerHTML.replace(/ come/g,「fly」)'的控制檯中運行相同的結果時,outerHTML被更改,但頁面中沒有任何更改。應該添加以使這些更改顯示在頁面中? – user6468132