首页 > web前端 > document.domain用途

document.domain用途

2012年4月15日 发表评论 阅读评论

在上一篇文章:iframe父子页面相互调用js方法中通过例子介绍了iframe与其父页面进行js的通信,但是这里有一个非常重要的限制,由于浏览器基于安全考虑,是不允许js在不同域名间进行通信,所以父子页面必须属于同一个域,即使是相同主域下的不同二级域也是不行的。

对于父子页面完全属于两个不同的域名,那么它们之间永远无法直接进行通信;如果父子页面是属于同一个主域下的不同二级域,则可以使用强制设置document.domain的方式来达到让其互相通信。document.domain默认值是window.location.host,可以js中设置为window.location.host的上一级域,但是不能为根域,例如:可以在页面www.netingcn.com设置document.domain为netingcn.com,但是不能设置为other.netingcn.com或com。

document.domain在一定程度上解决了不同二级域名页面的跨域问题。需要注意的是,如果父页面包含多个iframe且设置了document.domain,那么要与其进行通信的iframe也必须设置document.domain。另外在chrome 18中,父子页面属于相同域名,当设置document.domain后,它们之间变的无法通信了,其他浏览器正常。



欢迎转载,转载请注明文章出处,谢谢!
垃圾有点差凑合看还不错很精彩 (1 人打了份: 平均分:4.00)
Loading...Loading...
分类: web前端 标签:
  1. 2012年7月29日18:02 | #1

    跨域问题按此可解决,谢谢。

    • admin
      2012年7月29日21:03 | #2

      只有在相同的主域才适用,如果两个不相关的域是不行的

  1. 本文目前尚无任何 trackbacks 和 pingbacks.

无觅相关文章插件,快速提升流量