在最近的项目里面,用到了不少关于ifr a me父子传参通信的相关操作,记录一下,虽然很简单,但是确实十分有用的;
ifr a me通信可以分为2种,跨域和非跨域两种.分别说明;
有一点很重要,ifr a me是可以给name 属性的;给上name 属性可以省下一些代码;
非跨域 父调子
//父页面
点击
[removed]
var ob=document.getElementById('b')
js跨域是个讨论很多的话题。ifr a me跨域访问也被研究的很透了。 一般分两种情况: 一、 是同主域下面,不同子域之间的跨域; 同主域,不同子域跨域,设置相同的document.domian就可以解决; 父页访问子页,可以document.getElementById(“myframe”).contentWindow.document来访问ifr a me页面的内容;如果支持contentDocument也可以直接document.getElementById(“myframe”).co
本文实例讲述了JS实现ifr a me中子父页面跨域通讯的方法。分享给大家供大家参考,具体如下:
在非跨域的情况下,ifr a me中的子父页面可以很方便的通讯,但是在跨域的情况下,只能通过window.postMessage()方法来向其他页面发送信息,其他页面要通过window.addEventListener()监听事件来接收信息;
#跨域发送信息
#window.postMessage()语法
otherWindow.postMessage(message, targetOrigin,