【问题标题】:Remove DOM Element from iFrame using Javascript [duplicate]使用 Javascript 从 iFrame 中删除 DOM 元素 [重复]
【发布时间】:2011-01-04 20:32:57
【问题描述】:

我有一个动态网页,其中包含一个 iFrame,其中包含外部 html 代码。现在我需要从这个 iFrame 的主体中动态删除一个元素。

Firebug 为我提供了以下元素的 XPath 条目。

/html/body/div[2]/div[2]/ol/table/tbody/tr/td/a/img

我现在的问题是如何将其转换为 DOM 元素结构以创建将删除元素的 Javascript? 或者有没有其他方法可以删除这张图片?

[编辑]

iFrame 的来源是由另一个网络服务器创建的。由于负载共享,我们在那里生成它。

【问题讨论】:

    标签: javascript dom


    【解决方案1】:

    我在这里可能会被误导,但我相信您在尝试使用 Javascript 操作 iframe 时会开始遇到奇怪的问题(我有过类似的经历)。它归结为同源策略。基本上你不能编写一个脚本来操作来自不同来源的内容。出于明显的安全原因,这在大多数情况下都是有意义的。这可能不是您的问题的原因,但请记住它。

    http://en.wikipedia.org/wiki/Same_origin_policy

    【讨论】:

      【解决方案2】:

      HTML 是从外部域加载的吗?如果是这种情况,出于安全原因,您不能在 DOM 树上工作。在这篇博文中阅读更多内容(其中也有一些用于简单通信的技巧,但没有任何东西可用于操作 DOM):

      http://softwareas.com/cross-domain-communication-with-iframes

      【讨论】:

        【解决方案3】:

        您要么需要更改您的网络,以使两个域相同(并且负载平衡在域之后,而不是在域之前)或者,使用框架,例如easyXDM 跨域通信。

        【讨论】:

          猜你喜欢
          • 2013-05-19
          • 1970-01-01
          • 2011-08-28
          • 1970-01-01
          • 1970-01-01
          • 2022-12-31
          • 2017-12-21
          • 2020-03-22
          • 2013-09-17
          相关资源
          最近更新 更多