我想使用 insertHTML 从 Chrome 扩展的背景页面更改前台页面中的选定文本。
这可行,并用粗体“测试”替换前景页面中的文本:
chrome.tabs.executeScript(
null,
{code: document.execCommand('insertHTML', false, "<b>test</b>")},
res => callback(res) //res => { alert(res[0]) });
);
但是,我不能用变量替换“测试”。
我尝试修改 MDN Web Docs 中的示例:https ://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/tabs/executeScript
var changeText = 'document.execCommand(\'insertHTML\', false, \"' + COMPARED_TEXT + '\")';
var executing = chrome.tabs.executeScript({
code: changeText
});
executing.then(onExecuted, onError);
我希望能够插入 COMPARED_TEXT 的值,但是执行的值是未定义的,并且没有抛出错误来说明原因。