Javascript 如何访问nw.js中iframe的内容?

Javascript 如何访问nw.js中iframe的内容?,javascript,html,iframe,nw.js,Javascript,Html,Iframe,Nw.js,我需要在nw.js中捕获iframe的内容。该页位于不同的域上。我试图正常地访问它(myIframe.document),但得到了一个空的html文档(可能是某种形式的跨域安全性或其他)。但是,我可以从控制台访问iframe的内容,我猜我缺少一些设置,这些设置允许我直接从代码中执行相同的操作。但是,我不需要iframe来访问nw.js(出于安全原因,如果不可能的话,它会更好) $(函数() { //确保它实际上是在jquery的帮助下加载的 $('#myIframe').ready(函数(){

我需要在nw.js中捕获iframe的内容。该页位于不同的域上。我试图正常地访问它(
myIframe.document
),但得到了一个空的html文档(可能是某种形式的跨域安全性或其他)。但是,我可以从控制台访问iframe的内容,我猜我缺少一些设置,这些设置允许我直接从代码中执行相同的操作。但是,我不需要iframe来访问nw.js(出于安全原因,如果不可能的话,它会更好)


$(函数()
{
//确保它实际上是在jquery的帮助下加载的
$('#myIframe').ready(函数(){
console.log(window.frames[0].document);
//返回:
// 
// 
// 
// 
});
});

所以我可以访问iframe的内容,就像nw.js中的内容一样,我只是在我的原始代码中做了一些错误的事情

问题是使用jquery
ready
。当我试图在触发
ready
时访问iframe时,我得到了一个空文档,但当我在iframe的
onload
回调中执行相同操作时,我实际上得到了所有内容

<iframe src="http://google.com" width="800" height="600" id="myIframe" onload="loaded()"></iframe>
<script>
    function loaded()
    {
        console.log(window.frames[0].document);
        // Returns the actual page
    }
</script>

要获取URL的整个文档,可以在加载后使用此方法:

var Content=(new XMLSerializer()).serializeToString(iframeID.contentDocument);

我想您会在找到一些帮助-它是关于访问iframe并对其进行操作的。稍加调整,我相信它会对您有用。@Ewald我查看了您的代码,结果发现问题在于我使用了jquery。当调用jquery的
ready
回调时,iframe并没有真正准备好,但是当触发
onload
事件时,iframe就准备好了。太棒了,我很高兴你发现了问题,祝你的项目顺利。
<iframe src="http://google.com" width="800" height="600" nwdisable nwfaketop></iframe>
var Content=(new XMLSerializer()).serializeToString(iframeID.contentDocument);