js跨域问题

在iframe中得到iframe之外的元素。执行下面代码:$(window.parent.document)报错。在火狐里面出现Permissiondeniedtoacc... 在iframe中得到iframe之外的元素。执行下面代码:$(window.parent.document) 报错。
在火狐里面出现Permission denied to access property 'document' 但是在ie里面没有这个问题。。
我知道是跨域问题。。但是要如何解决跨域问题啊??
主要是我的js文件跨域了啊
展开
 我来答
newlethe
2013-01-22 · TA获得超过3972个赞
知道小有建树答主
回答量:991
采纳率:0%
帮助的人:896万
展开全部

 

在AAA.com域名下的index.htm页面中内嵌了BBB.com域名下的一个页面index.htm,正常情况下iframe内部的index.htm页面是无法访问父页面index.htm中的任何dom对象或者js函数的,因为跨域,但我们经常又需要做一些参数回传的事情怎么办呢?以上的这种实现方式就很好的解决了这个问题;

解决方案的关键优雅之处在于:浏览器虽然会禁止js跨域访问页面中的对象,但对于iframe的层级关系引用并没有做限制,即parent仍然可用;该方案就是利用了2层内嵌iframe、使用第二级iframe中的页面与parent.parent的页面是同域名的关系,从而避免跨域问题实现两个页面间相关数据的传递,本质上就是利用parent.parent实现对父父页面中js的回调!

参考资料: http://itmofn.sinaapp.com/?p=85

molaifeng
2013-01-16 · TA获得超过5273个赞
知道大有可为答主
回答量:1629
采纳率:50%
帮助的人:1782万
展开全部
这是包含iframe的html代码
<script type="text/javascript">
var str = "我是iframe外部的";
</script>
<style type="text/css">
</style>
</head>
<body>
<iframe src="iframeIn.html"></iframe>
</body>
</html>

这是iframeIn.html的代码
<script type="text/javascript">
function sub() {
alert(top.window.str);
}
</script>
<style type="text/css">
</style>
</head>
<body>
<input type="button" value="得到引用iframe的那个网页的内容" onclick="sub();">
</body>
</html>

关键得看你iframe里的网页和所要调用的网页是什么关系
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式