Gab*_*Gab 5 javascript dom internet-explorer-8
我正在尝试在子域中加载页面,使用iframe加载到我的主域,并让子域在我的主域内调用javascript函数(当dom-ready时),以便主域可以根据内容的高度调整iframe的大小.这是一个例子
www.mysite.com(页面内的代码):
<script type="text/javascript">
document.domain = "mysite.com";
function doSomething() {
//do something
}
</script>
<iframe id="mytestid" src="test.mysite.com" height="0" width="900"></iframe>
Run Code Online (Sandbox Code Playgroud)
对于我的其他网站test.mysite.com,这是页面中的代码:
<script>
document.domain = "mysite.com";
$(document).ready(function () {
window.parent.doSomething();
});
</script>
Run Code Online (Sandbox Code Playgroud)
这似乎适用于firefox,safari和chrome,但不适用于IE8.IE8在拨打电话时总是给我一个"权限被拒绝"的错误window.parent.doSomething()
我无法在IE7或IE6上测试以查看问题是否仍然存在,但是有没有人遇到过这个问题?我是否错过了我正在编写代码的方式?
谢谢你的帮助.
这是一个包含很多关于一些可能的问题的评论的线程:
请注意,我没有对此进行测试,因为我没有 IE。不幸的是,从我的角度来看,这两种方法似乎都没有说服力——尝试一下,看看它是否适合你。
所以,从上面的帖子来看,可能有两个原因:
iframes等),请尝试删除它们并仅使用这两个(主文件和 iframe)进行测试setTimeout后等待几秒钟document.domain