获取iframe窗口的 contentWindow 不兼容Chrome ?

bennman 2011-02-28 01:06:57

<script type="text/javascript">
function show(){
var iframe=document.getElementById('aa');
var h=iframe.contentWindow.document.body.offsetHeight;
alert(h)
}
</script>
</head>
<body>
<iframe id="aa" src="3.html" frameborder="0" scrolling="no" width="100%" height="200" ></iframe>
<input type="button" value="click" onclick="show()"/>
</body>
</html>


3.html页面:

<body>
test
</body>

为什么Chrome浏览器弹不出 3.html的高度呢? thank everyone!
...全文
2565 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
coolt 2013-05-27
  • 打赏
  • 举报
回复
引用 10 楼 bennman 的回复:
[Quote=引用 9 楼 free_wind22 的回复:] 安全问题,你用http://这种格式来访问就可以了。 [/Quote] 哦,终于懂了!其实6楼早就回答了,只是我没领悟到! 结论是: Chrome会把本地iframe 也当成是跨域,会报错!用http://就可以了 thanks!
请问怎么用http://
bennman 2011-03-01
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 free_wind22 的回复:]

安全问题,你用http://这种格式来访问就可以了。
[/Quote]

哦,终于懂了!其实6楼早就回答了,只是我没领悟到!
结论是: Chrome会把本地iframe 也当成是跨域,会报错!用http://就可以了 thanks!
2011-03-01
  • 打赏
  • 举报
回复
安全问题,你用http://这种格式来访问就可以了。
bennman 2011-02-28
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 danica7773 的回复:]

LZ,对不起.我搞错了。。。不用那样的

如果你的代码没错,你用IIS查看,不要直接在浏览器中找打开页面就可以的!
[/Quote]
5楼的肯定不行, 难道是我浏览器的问题? 我的版本 Chrome 9.0.597.98
打字员 2011-02-28
  • 打赏
  • 举报
回复
LZ,对不起.我搞错了。。。不用那样的

如果你的代码没错,你用IIS查看,不要直接在浏览器中找打开页面就可以的!
monexus 2011-02-28
  • 打赏
  • 举报
回复
(iframe.contentWindow || iframe).document
bennman 2011-02-28
  • 打赏
  • 举报
回复
试了下 .ownerDocument是每个浏览器都支持的属性,但并不等于contentWindow,
比如:我要改变iframe里的css就无效:(上面的h的值也并不是一个对象的)
_iframe.ownerDocument.getElementById('haha').style.color='#f00';

顺便问下,你是怎么跟踪的!
bbbearmyn 2011-02-28
  • 打赏
  • 举报
回复
+1

[Quote=引用 2 楼 danica7773 的回复:]

JScript code

function show(){
var _iframe = document.getElementById('aa');
//在Chrome内跟踪_iframe.contentWindow得到的是object;但这个object是个空对象;
//所以跟踪了一下,发现在Chrome里,_iframe下有一个子对……
[/Quote]
打字员 2011-02-28
  • 打赏
  • 举报
回复

function show(){
var _iframe = document.getElementById('aa');
//在Chrome内跟踪_iframe.contentWindow得到的是object;但这个object是个空对象;
//所以跟踪了一下,发现在Chrome里,_iframe下有一个子对象ownerDocument,相当于FF,IE等浏览器的_iframe.contentWindow.document
var h = _iframe.contentWindow.document? _iframe.contentWindow.document.body : _iframe.ownerDocument.body;
alert(h.offsetHeight);
}

87,922

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧