Javascript &引用;“访问被拒绝”;伊夫拉米

Javascript &引用;“访问被拒绝”;伊夫拉米,javascript,iframe,permission-denied,Javascript,Iframe,Permission Denied,可能重复: 我在b.com中有一个iframe,它试图从a.com[我的网站]获取jQuery库。每当它这样做时,我都会在IE7和IE8中看到“访问被拒绝”错误 我已经签出了Fiddler,它没有显示脚本被阻止了,但是IE出现了“访问被拒绝”的错误 是什么导致了这个问题以及如何避免它 简单地说,浏览器安全性不允许在不同域上的两个帧之间进行通信。因此,您无法从另一个框架中“获取jQuery库”。没有解决办法,否则浏览器会出现安全漏洞 您唯一的选择是执行以下操作之一: 不在帧之间通信(例如,在所

可能重复:

我在b.com中有一个iframe,它试图从a.com[我的网站]获取jQuery库。每当它这样做时,我都会在IE7和IE8中看到“访问被拒绝”错误

我已经签出了Fiddler,它没有显示脚本被阻止了,但是IE出现了“访问被拒绝”的错误

是什么导致了这个问题以及如何避免它


简单地说,浏览器安全性不允许在不同域上的两个帧之间进行通信。因此,您无法从另一个框架中“获取jQuery库”。没有解决办法,否则浏览器会出现安全漏洞

您唯一的选择是执行以下操作之一:

  • 不在帧之间通信(例如,在所有需要jQuery的帧中加载jQuery)
  • 在同一个域上承载每个帧的内容(您可以使用不同的子域)

某些情况下IE7从href地址获取不同的域/虚拟文件夹。。。www.foo.com和foo.com是不同的域等。你有这样的链接吗?

你已经问过这个问题:2953158。再问一次不会得到不同的答案。你不能这样做,你不能绕过它。如果可以,这是一个bug,IE团队会修复它。您是否在页面完全加载之前操作DOM?IE对此大惊小怪……这个问题涉及到可能的解决办法,但我仍然没有任何充分的答案?写“你不能这样做”不是答案。我需要推迟剧本吗?这就是为什么我在评论中说的,而不是回答。去修改你原来的问题;这仍然是一个骗局。嗨,我想这就是SO的问题所在。我在8小时前问了一个问题,但没有得到答案,仍然没有得到帮助,观点没有改变。我现在问,我得到了帮助。删除原文-它对社区没有任何帮助-确实如此。嘿,谢谢你的回复。那么选项1——“在所有需要jQuery的帧中加载jQuery”——我该怎么做呢?i、 e.我使用脚本标签直接从我的域加载它,并带有P3P。i、 e.在b.com上的iframe中,它的a.com/jquery.js“>etc?@Tom-如果您希望主页和iframe都能访问jQuery,只需在这两个页面中都包含脚本标记。。。i、 e.托管在a.com上的页面和托管在b.com上的页面都需要一个
标签。这个答案听起来好像不可能在不同域上的框架之间进行通信,这是不准确的。例如,一种解决方案是window.postMessage方法。更多信息(对于jQuery用户):嘿,谢谢-我想我的问题可能与x域有关。我认为设置document.domain javascript只适用于子域?您不能使用document.domain=“foulis.foo.com”。我的网站是www.a.com,iframe在www.b.com上?i、 e.document.domain[我认为]只有在www.a.com和bla.a.com上才有帮助?或有一个将document.domain用于子域和备选域的代码。看看那里。。。