Google chrome extension chrome.devtools.inspectedWindow.eval检查Iframe中的元素(没有Iframe URL的Iframe)

Google chrome extension chrome.devtools.inspectedWindow.eval检查Iframe中的元素(没有Iframe URL的Iframe),google-chrome-extension,google-chrome-devtools,Google Chrome Extension,Google Chrome Devtools,在我的扩展中,我突出显示了使用XPATH的节点。 如果我有一个带有URL hello.com的Iframe,下面的代码可以工作 var script=“var nodes=document.evaluate(\”“+issue.xpath+“\”,document,null,XPathResult.ANY\u TYPE,null);”+ “var node=nodes.iterateNext();”+ “如果(节点){”+ “检查(节点);”+ "}" chrome.devtools.insp

在我的扩展中,我突出显示了使用XPATH的节点。 如果我有一个带有URL hello.com的Iframe,下面的代码可以工作

var script=“var nodes=document.evaluate(\”“+issue.xpath+“\”,document,null,XPathResult.ANY\u TYPE,null);”+
“var node=nodes.iterateNext();”+
“如果(节点){”+
“检查(节点);”+
"}"
chrome.devtools.inspectedWindow.eval(脚本{
框架URL:
});Chromium源代码()显示inspectedWindow.eval()无法执行此操作:

var frame=options.frameURL?resolveURLToFrame(options.frameURL):WebInspector.targetManager.mainTarget().resourceTreeModel.mainFrame;
如果(!帧){
if(options.frameURL)
console.warn(“评估:没有包含URL的框架”+options.frameURL);
其他的
console.warn(“评估:主框架尚不可用”);
返回此。_status.E_NOTFOUND(options.frameURL | | |“”);
}
在上提交功能请求

我不知道有什么解决办法,但请看一下高级devtools扩展,例如和其他扩展。

chromium上记录的缺陷
var frame = options.frameURL ? resolveURLToFrame(options.frameURL) : WebInspector.targetManager.mainTarget().resourceTreeModel.mainFrame;
if (!frame) {
    if (options.frameURL)
        console.warn("evaluate: there is no frame with URL " + options.frameURL);
    else
        console.warn("evaluate: the main frame is not yet available");
    return this._status.E_NOTFOUND(options.frameURL || "<top>");
}