【问题标题】:How to use same javascript/jquery for iframe content如何对 iframe 内容使用相同的 javascript/jquery
【发布时间】:2018-12-01 12:21:43
【问题描述】:

我已经为我网站上的一些内容编写了自己的 js/jquery 代码。现在相同的内容在 iframe 内,但 js/jquery 仅适用于没有 iframe 的内容。

我可以通过什么方式对两个内容重复使用相同的代码?

示例我希望这对双方都有效

$( ".myclass-price-info" ).appendTo( $( ".myclass-single" ) );

编辑: 示例:我在我的页面上有这个正常的 html

<div class="test"> This is test div </div>

然后我在 iframe 中有相同的 div,如下所示

<iframe src="">
   <html>
     <body>
     <div class="test"> This is test div </div>
     </body>
   </html>
</iframe>

这只是一个 div 作为示例,我有相同示例的整页。

现在我已经编写了 js/jquery 来定位我的 .test 类并执行一些 js/jquery 操作。 js/jquery 适用于普通 html,但不适用于 iframe div。例如,我更改了 div 的背景,它更改为普通 html,但没有更改为 iframe 内的 div。

【问题讨论】:

  • 请提供minimal reproducible example,详细说明您正在尝试做什么
  • @charlietfl 编辑了我的问题
  • 一个 iframe 有它自己的窗口。因此,您必须将其视为 2 个完全不同的页面。更加详细一些。您是否尝试在 iframe 中复制?

标签: javascript jquery iframe


【解决方案1】:

如果不是跨域:

$('#iframeid').contents().find('.myclass-single').append('.myclass-price-info');

【讨论】:

  • 同一个域。
  • 也意味着我必须更改我所有的 js 代码?并为 iframe 重做?
  • 应该说“如果是不是跨域”
  • 您不必将 jquery 放在 iframe 中,只需放在父级上即可。但是如果 jquery 也在那里,那不是问题。
  • 我真正的问题是我必须编辑现有的 js 代码以定位 iframe 内容 div 吗?我有大约 500 行代码,我是否必须重新执行此操作才能定位 i 框架 div?
猜你喜欢
  • 1970-01-01
  • 2010-12-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多