我在AIR桌面应用程序中有一个mx:html组件,它将外部网页加载到其中…
这个网页上有一个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在一个窗口中被考虑并且有一个自己的文档.您可以使用类似这样的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;