【发布时间】:2016-08-13 08:51:45
【问题描述】:
我在同一个域上有两个页面。 Home.html 和 page2.html 是它们的名称。
home.html 有以下内容
<html>
<iframe id="one" src="page2.html" style="display:none"></iframe>
<div id="container">
<h1>Title of Page</h1>
<div id="ShowHere"></div>
</div>
</html>
page2.html 有以下内容。
<html>
<div id="container">
<span id="target">Some Text</span>
</div>
<span>Don't Show This Text</span>
</html>
我想使用一些 javascript 从页面 home.html 上 Id="one" 的 iframe 中获取“target”的内容,然后更改元素 id=ShowHere 的 innerhtml 以显示其中的 html元素“目标”,使得,它显示了词语“一些文本”一词在“页的标题”。
我认为下面是一个开始,放在home.html的底部:
<script>
var frameSource = document.getElementById("one").contentWindow.document.documentElement.outerHTML;
// ANSWER TO MY QUESTION
document.getElementById("ShowHere").innerHTML = frameSource;
</script>
我四处搜索并看到了一些据说可以做到这一点的答案,但没有一个可以提供关于如何做到这一点的有意义的解释,也没有一个我可以开始工作。我更喜欢使用普通的 javascript,但 Jquery 也可以。
基于我正在尝试做的事情,即从同一域上的另一个页面获取 div 的内容(即 innerhtml),我想知道是否有比创建一个不可见的 iframe 然后阅读它更好的方法。答案其达到所期望的结果,而是通过另一种机制,也欢迎。 P>
【问题讨论】:
标签: javascript jquery html iframe innerhtml