我正在尝试从DevTools的编码器中获取所选文本。我可以在onSelectionChanged处理程序中获取selectionInfo,但我不知道如何获取文本。
如何在onSelectionChanged之前获取selectionInfo(当前选择)?
chrome.devtools.panels.sources.createSidebarPane(
"title",
function(sidebar) {
function update(selectionInfo) {
//alert([selectionInfo.url, selectionInfo.startLine, selectionInfo.endLine, selectionInfo.startColumn, selectionInfo.endColumn]);
sidebar.setObject(JSON.parse(JSON.stringify(selectionInfo)));
// How to extract text using data from selectionInfo ???
}
update(/*selectionInfo should be there*/);
chrome.devtools.panels.sources.onSelectionChanged.addListener(update);
}
);
答案 0 :(得分:1)
chrome.devtools.panels.elements.onSelectionChanged.addListener
的回调不会引起任何争论,参见API documentation。这意味着您的selectionInfo
将始终未定义。
要获取所选元素,您可以使用$0
变量。因此,您的代码如下所示:
chrome.devtools.panels.elements.createSidebarPane(
"title",
function(sidebar) {
function update() {
sidebar.setExpression("$0");
}
update();
chrome.devtools.panels.elements.onSelectionChanged.addListener(update);
}
);
注意:我将chrome.devtools.panels.sources
替换为不存在的chrome.devtools.panels.elements
。