Chrome Extension 记录
传递选定元素到内容脚本
内容脚本不能直接访问当前选中的元素。但是,任何使用 inspectedWindow.eval 来执行的代码都可以在 DevTools 控制台和命令行的 API 中使用。例如,在测试代码时,你可以使用 $0
访问当前被选定的元素。
要传递选中的元素到内容脚本,可以如下完成:
- 在内容脚本中,创建一个函数,将选定参数作为这个函数的参数。
- 在 DevTools 页面中使用在
useContentScriptContext:true
的选项中的inspectedWindow.eval
来该函数方法。
在内容脚本中你的函数代码可能是这个样子:
function setSelectedElement(el) {
// do something with the selected element
}
在 DevTools 页面调用这个方法,像这样:
chrome.devtools.inspectedWindow.eval("setSelectedElement($0)",
{ useContentScriptContext: true });
useContentScriptContext:true
选项限定的是表达必须在相同的上下文中的内容脚本中进行计算,所以它可以使用setSelectedElement
方法。
来源:https://www.breakyizhan.com/chromeconsole/2281.html?amp
chrome.devtools.panels.openResource('https://www.sogou.com/web/css/yuyin.v1.0.1.css', 45, res => {
console.log(20, 'openResource', res);
});
chrome.desktopCapture.chooseDesktopMedia