javascript - 将iframe内html文件的元素添加到原始文件的DOM树中

标签 javascript jquery html iframe

我有 test.php 文件,其中包含 iframe,当单击按钮 click 时,该文件从 iframe.html 获取其源代码。

但是我想在 iframe (iframe.html) 内的文件元素上应用一些 javascript 代码,但什么也没发生,这是我的代码:

tesp.php 文件:

<html>
<head>
    <title>test</title>
</head>
<body>
<input type="button" value="Click" id="fill_iframe"/>
<br>
<iframe id="iframe" src="" style="width: 200px; height: 100px">hello</iframe>
<br>
<div class="front">
    <a href="#">outside frame</a>
</div>
<br>
<input type="button" value="change color" id="log"/>
<script src="https://code.jquery.com/jquery-3.1.1.js"></script>
<script>
    $("#fill_iframe").click(function () {
    $("#iframe")[0].src = "iframe.html";
    });
    $("#log").click(function () {

    $('.front a').css('color', 'red');
    console.log($("#iframe"));
    });

</script>
</body>
</html>

和 iframe.html 文件:

<html>
   <head>

    </head>
   <body>
      <div class="front">
        <a href="#">inside frame</a>
      </div>

   </body>
</html>

当我单击更改颜色按钮时,仅更改外部链接。

当我使用 console.log($("#iframe")); 时,它没有子项?这是为什么?

我错过了什么?

我什至尝试使用 $("#iframe").load("iframe.html"); 没有任何改变

提前致谢:)

最佳答案

您需要进入 iframe 文档内部。在 jQuery 中,您可以使用

jQuery("#iframe").contents().find(".front a").css("color", "red");

关于javascript - 将iframe内html文件的元素添加到原始文件的DOM树中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41665499/

相关文章:

javascript - 在html中使用大量的javascript

JavaScript 添加事件监听器

javascript - 悬停在 div 上时,<a> 标记不会转到链接

html - IE8 渐变不显示

javascript - 无法使用 Axios 从 Http POST 请求中获取 header

javascript - 音频无法在Ipad中播放,但正在笔记本电脑中播放

用于过滤项目列表的 Javascript/jquery 可视化插件

javascript - 如何使用下划线 throttle 进行滚动?

jQuery .css() 方法不放置背景图片 - 找不到错误资源

html - 在 block 级元素的右上角添加按钮