xml – 桌面应用程序中的HTML加载带有iframe的页面

前端之家收集整理的这篇文章主要介绍了xml – 桌面应用程序中的HTML加载带有iframe的页面前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在AIR桌面应用程序中有一个mx:html组件,它将外部网页加载到其中…

这个网页上有一个iframe,iframe加载(显然)另一个页面……

我无法弄清楚如何获取iframe的代码……

如果我尝试获取网页内容,我只会检索起始页面,如:

文件网页

<html>
<!-- html code-->
<iframe src="http://host/framepage.html">content default</iframe>
<!-- other html code-->
</html>

文件framepage.html

<div>test test test</div>

我想得到字符串< div>测试测试< / div>

请告诉我,有一种方法可以获取iframe的内容(无需重新加载)…

编辑

看看Exort的响应,使用

var iFrame:* = domWindow.document.getElementById("myIframe");

将返回iframe,但内容不是我想要的…
使用我上面的网页和框架页面示例,我将得到的iframe内容

content default

代替

<div>test test test</div>

这就像第二页没有加载,但它实际上是在浏览器窗口中加载和渲染(我也尝试使用按钮,所以我可以延迟搜索iframe内容.

解决方法

我没有太多时间,所以这可能不是一个非常深刻的答案,但iframe在一个窗口中被考虑并且有一个自己的文档.您可以使用类似这样的html DOM获取它的内容.顺便说一句,这是AS3,如果我使用’*’作为对象类型.使用对象类型在这里不会很好用.

var domWindow:* = myHTML.htmlLoader.window; //DOM window object

//if you don't have the id,you can get all iframes with getElementsByTagName("iframe")
var iFrame:* = domWindow.document.getElementById("myIframe");

var iFrameContent:String = iframe.contentDocument.body.innerHTML;

猜你在找的XML相关文章