https://stackoverflow.com/questions/17567624/pass-a-parameter-to-a-content-script-injected-using-chrome-tabs-executescript
chrome.tabs.executeScript 可以嵌套,通过 code 属性把变量注入 file。
选中文字右键菜单传值给 content.js
background.js
function textOnClick(info, tab) {
console.log("info: " + JSON.stringify(info));
text = info.selectionText;
console.log(text);
chrome.tabs.executeScript(tab.id,
{ code: 'var text = "' + text + '";' },
function() { chrome.tabs.executeScript(tab.id, { file: 'content.js' }); }
);
}
var menu = chrome.contextMenus.create({"title": "搜索文字", "contexts":["page","selection"], "onclick": textOnClick });
content.js
console.log(text);
if (text == 'undefined') {
showAll(true);
} else {
search(text);
}
本文介绍了一个Chrome浏览器扩展的功能实现方法,通过右键菜单选中页面上的文字后,将选中的文字传递给Content Script进行进一步处理。此功能利用了chrome.tabs.executeScript API来注入并执行JavaScript代码。
2717

被折叠的 条评论
为什么被折叠?



