html5跨域获取页面元素,HTML5窗口间同域和跨域的通信

一丶同域下的

1.如果我们要操作iframe里面的元素,首先获取到引入的页面的window。获取iframe里面的window对象。

var oIframe=getElementsByTagName(‘iframe‘)[0].contentWindow;

然后就可以对iframe里面的DOM元素进行操作了。

2.window.open()方法

window.open()方法会返回一个被打开页面的window对象。

var newWindow=window.open(‘xx.html‘,‘_blank‘);

通过newWindow对子页面的DOM元素进行操作。

二丶跨域下的

1.postMessage:  可以通过这个对象给另外一个窗口发送信息。接受窗口的window对象.postMessage()。

同样我们获取iframe下的window对象 var oIframe=getElementsByTagName(‘iframe‘)[0].contentWindow;然后发送信息 oIframe.postMessage(‘参数A‘,‘参数B‘);

参数A:表示发送的数据    参数B表示接受参数的域名(要带上协议)

最后当接受参数页面接受到Mesage信息时,触发事件。可以这样写

window.addEventListener("Message",function(ev){

//ev.data ------这个就是参数A,拿这个数做判断,从而来操作本野蛮窗口;

//ev.origin-----发送数据的源;

},false)

2 字页面操作父级页面

window---指的是当前窗口页面    parent---指的是包含当前页面的父级页面的window对象。    top-----指的是顶级window对象。

三丶

Ajax请求下的跨域解决办法

header(‘Access-Control-Allow-Origin:http://www.a.com‘);     //这是允许访问该资源的域 设置如下代码

IE下实现跨域

同域下,XMLHttpRequest

跨域下:oXDomainRequest

事件是onload事件

原文:http://www.cnblogs.com/Magic-ksf/p/5774827.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值