我试图弄清楚如何在生成的iframe中选择并修改HTML。 iframe可显示各种媒体(图像,pdf等)。为了显示不同的项目,我最初使用如下代码创建它:

$('#mydiv').html("<iframe id='myiframe' src='path/file.jpg'></iframe>");


然后根据需要使用以下内容更新其内容:

$('#myiframe').attr("src","path/newfile.jpg");


这样会生成如下HTML(通过Chrome的元素查看器可以看到):

<div id='mydiv'>
  <iframe id='myiframe' src='path/file.jpg'>
    #document
      <html>
        <body style="margin:0">
          <img style="-webkit-user-select:none" src="path/file.jpg">
        </body>
      </html>
  </iframe>
</div>


我想选择动态生成的<img>标签,以便调整其宽度。但是我不知道要使用jquery选择器。有想法吗?

最佳答案

使用jQuerys contents方法。该文档甚至还有一个标题为“更改iframe内链接的背景颜色”的示例。


  获取匹配元素集中每个元素的子元素,
  包括文本和注释节点。


应用于您的代码:

var images = $('#myiframe').contents().find('img');


真正的问题是,为什么首先需要iframe?

07-24 09:51
查看更多