跨源资源共享(CORS)标题可以使内容页面授权跨域访问其资源,从而允许其包含的页面读取其高度? (或者,或者,包含页面授权内容页面宣布其高度?)
还是CORS严格的AJAX的东西?
解决方法 CORS不允许您这样做,但您可以使用跨文档消息传递在iframe和其父窗口之间即使在不同的域上发送字符串,并使用它进行通信.大多数浏览器支持这一点,尽管Internet Explorer’s way与the others不同.
假设你想要的是让iframe向父页面宣布它所需的高度,你可以把它放在你的iframe代码(未测试)中:
var message = { wIDth: desireDWIDth,height: desiredHeight};window.parent.postMessage(JsON.stringify(message),'*');
这在你的包含页面:
function onMessage (event) { if (event.source != theiframeElement.contentwindow) return; var message = JsON.parse(event.data); var desiredHeight = message.height; var desireDWIDth = message.wIDth; }if (window.attachEvent) window.attachEvent('onmessage',onMessage);else if (window.addEventListener) window.addEventListener('message',onMessage,false);
attachEvent是用于IE,addEventListener是为其他人.为了安全起见,您可能需要检查目标原点,但这是一般想法.
编辑:Browser support for Cross-document messaging(-fsb)
总结以上是内存溢出为你收集整理的跨源资源共享头可以授权X-Domain IFRAME访问吗?全部内容,希望文章能够帮你解决跨源资源共享头可以授权X-Domain IFRAME访问吗?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)