使用 JavaScript 访问跨域 iframe 元素

发布于 2024-12-10 21:44:13 字数 546 浏览 0 评论 0原文

我的 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 标记中的内容。这可能吗?

I have an iframe in my html page and I want to access some content from the page opened in this 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>

In this web page's source,

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

I want to access the content in the h1 tag with id "page-title" using javascript. Could it be possible?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

天冷不及心凉 2024-12-17 21:44:13

您应该首先阅读浏览器的同源策略。这可以防止一个源中的框架、窗口或 iframe 中的 javascript 访问不同源中的另一个框架中的内容或脚本。因此,如果您的 iframe 与脚本页面的来源不同,则它无法直接访问 iframe 的内容。

如果您拥有最新的浏览器之一并且对两个框架进行编码以进行协作(这意味着您必须控制两个框架中的 javascript 代码),则有一个名为 窗口消息传递,可用于在不同来源的框架之间传递信息。

You should first read about the browser's same-origin policy. This prevents javascript from a frame or window or iframe in one origin from accessing the content or scripts in another frame in a different origin. So, if your iframe is not the same origin as the page of your script, then it cannot directly access the iframe's contents.

If you have one of the latest browsers and you code both frames to cooperate (which means you have to control the javascript code in both frames), there is a new feature called window messaging that can be used to pass information between frames from different origins.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文