使用JavaScript访问跨域iframe元素

时间:2011-10-18 08:11:51

标签: javascript html dom iframe

我的html页面中有一个iframe,我想从这个iframe中打开的页面访问一些内容。

<table border="1" width="100%" height="100%">
    <tr>
        <td id = "freebase_td">
        <iframe id = "freebase_frame" src="http://www.freebase.com/view/en/angelina_jolie" width="100%" height="400px"></iframe>
        </td>
    </tr>
</table>

在此网页的来源中,

  <h1 id="page-title">
    Angelina Jolie
  </h1>

我想使用javascript访问id为“page-title”的h1标签中的内容。可能吗?

1 个答案:

答案 0 :(得分:4)

您应首先阅读browser's same-origin policy。这可以防止来自一个源中的帧或窗口或iframe的javascript访问不同来源的另一帧中的内容或脚本。因此,如果您的iframe与脚本页面的来源不同,则无法直接访问iframe的内容。

如果你有一个最新的浏览器,你编写两个框架进行合作(这意味着你必须控制两个框架中的javascript代码),有一个名为window messaging的新功能,可用于传递来自不同来源的帧之间的信息。