这里简单说明两个方法,都是未跨域情况下在index.html内操作b.html内的 DOM。
如:index.html内引入iframe,在index内如何用JS操作iframe内的DOM元素?
先贴下index.html和iframe引入的a.html内容。
index-> <div class="d1"> <iframe src="a.html" frameborder="0" name="one" id="iframeId"></iframe> </div>
a.html
<div id="dd"> <h1>iframe里的元素!</h1> </div>
法一:
var d=window.frames["one"].window; d.onload=function(){ console.log(d.document.getElementById("dd")); };
法二:
JS动态创建iframe并插入
var ifr = document.createElement('iframe'); ifr.src = 'a.html'; document.body.appendChild(ifr); ifr.onload = function(){ var doc = ifr.contentDocument || ifr.contentWindow.document; // 在这里操纵b.html console.log(doc.getElementById("dd")); };
两种的输出结果都是
以上所述是小编给大家介绍的JS未跨域操作iframe里的DOM 的相关知识,希望对大家有所帮助!
问题内容: 可以说,我有一个名为example.com的网站,在该网站上嵌入了iframe.net域的iframe,现在我想读取iframe的内容并传递一些参数以显示文本消息。像Hi和用户名一样。 现在的问题是,这无法在两者之间建立连接,甚至无法获得我使用以下方法使用的iframe的innerHTML 它将引发错误“权限被拒绝访问属性” 有谁知道如何在跨域平台中读写 问题答案: 如果您无法控制框架
问题内容: 我正在使用angular js。我有一个控制器“ youTubePlayerCtrl”,在此控制器中,我有$ scope.videoID,其中包含youtube视频ID。我可以在h1块的belows div中获得此值。但我无法在iframe中获得{{videoID}},请问有人可以帮助我解决此问题。 这是错误日志: [$ interpolate:noconcat] http://err
问题内容: 我有一个用于跨域网站的iframe。我想读取iframe的DOM,我相信这是可能的,因为使用检查器,我什至可以修改iframe的DOM。但是,无论尝试哪种方式,我都会遇到相同的原始策略。我想要的只是从iframe加载到本地DOM中的内容。我以为它就像一样简单,但是返回的是空字符串。 我真的希望有一种方法可以这样做,因为我最近几天一直在做的工作是基于这种可行的方法。 谢谢 问题答案: 你
问题内容: 可以说,我有一个名为example.com的网站,在该网站上嵌入了iframe.net域的iframe,现在我想读取iframe的内容并传递一些参数以显示文本消息。像Hi和用户名一样。 现在的问题是,这无法在两者之间建立连接,甚至无法获得我使用以下方法使用的iframe的innerHTML 它将引发错误“权限被拒绝访问属性” 有谁知道如何在跨域平台中读写 问题答案: 如果您无法控制框架
本文向大家介绍jQuery操作iframe中js函数的方法小结,包括了jQuery操作iframe中js函数的方法小结的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了jQuery操作iframe中js函数的方法。分享给大家供大家参考,具体如下: 1、jquery操作iframe中的元素(2种方式) 2、操作父界面中的元素(header:为某个元素的id) 3、js调用iframe中的js函
本文向大家介绍jquery操作 iframe的方法,包括了jquery操作 iframe的方法的使用技巧和注意事项,需要的朋友参考一下 我们先看一下 JQUERY中的对像 contents() 的帮助文件 contents() 概述 查找匹配元素内部所有的子节点(包括文本节点)。如果元素是一个iframe,则查找文档内容 示例 描述: 查找所有文本节点并加粗 HTML jQuery 描述: 往一个