将iframe元素转换为文本数据? - JavaScript

问题描述 投票:0回答:1

使用iframe元素,

<iframe id="">
<html>
<head>
  <title></title>
<body>
<element attribute=""></element>
<etc... />
</body>
</html>
</iframe>

我如何获得iframe的所有子元素,不包括iframe元素本身,将元素复制为文本,并将该文本附加到textarea元素,id为id,全部兼容:

<meta http-equiv="X-UA-Compatible" content="IE=8"> 

......使用JavaScript。

任何帮助将受到高度赞赏。

javascript hta
1个回答
0
投票

如果您不是在谈论来自不同框架的方法之间的通信,那么托管iframe的位置并不重要。如果您不想考虑这个概念,如果您想访问某些DOM元素,可以使用contentWindowHTMLIFrame​Element​。在客户端允许使用此方法操作元素。更多细节在MDN中解释

contentWindow属性返回元素的Window对象。您可以使用此Window对象来访问iframe的文档及其内部DOM。此属性是只读的,但其属性可以像全局Window对象一样进行操作。

An example

假设您有一个iframe及其Shadow DOM树,并且您想要访问使用span id声明的foo元素。

// HTMLIFrame​Element 
let someIframe = document.getElementBy("idOfIframe");

// Global Object of the Iframe
let frameWindow = someIframe.contentWindow;

// Dom Tree of the Target Window
let domTreeofFrame = frameWindow.document;

let textSpan = domTreeofFrame.getElementById("foo");
© www.soinside.com 2019 - 2024. All rights reserved.