当前位置: 首页 > 图文教程 > 网络编程 > Javascript > JS获取scrollHeight问题想到的标准问题

Javascript
拖动一个HTML元素
JavaScript使用prototype定义对象类型(转)[
枚举JavaScript对象的函数
在Javascript中定义对象类别
获取任意Html元素与body之间的偏移距离 offsetTop、offsetLeft (For:IE5+ FF1 )[
用JavaScript限制textarea输入长度 (For: IE、Firefox ...)[
检测邮箱地址是否合法 Check Mail Address (For: IE5+、FF1.06、Opera 7+ ...)[
用于自动添加Digg This!按钮的JavaScript
Javascript实例教程(19) 使用HoTMetal(1)
Javascript实例教程(19) 使用HoTMetal(2)
Javascript实例教程(19) 使用HoTMetal(3)
Javascript实例教程(19) 使用HoTMetal(4)
Javascript实例教程(19) 使用HoTMetal(5)
Javascript实例教程(19) 使用HoTMetal(6)
Javascript实例教程(19) 使用HoTMetal(7)
实现复选框全选/全不选切换
js不是基础的基础
IE的不合理设计和Bugs
js倒计时代码
js静态作用域的功能。

Javascript 中的 JS获取scrollHeight问题想到的标准问题


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 86 ::
收藏到网摘: n/a

我在作一个iframe自动调整高度时,被嵌入的页面commit.asp的代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>的相关评论</title>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
-->
</style>
</head>
<body bgColor="transparent" onload="zoomiframe();">
.
.
.
'
Asp代码
'
'
'
'
</body>
</html>
<script language=javascript>
<!--框架页自动调整尺寸-->
function zoomiframe()
{
parent.document.all("comment_load").style.height=document.body.scrollHeight;
}
</script>
然后在另外的页面插入其它代码,将这页嵌入到其它页面
<iframe src="comment.asp?classid=2&id=12" allowtransparency="true" name="comment_load" width="540" height="288" marginwidth="0" marginheight="0" align="middle" scrolling="no" frameborder="0"></iframe>
但是没有效果,iframe不能按照内容自动调高度。
后来我在zoomiframe()加入了一句alert(document.body.scrollHeight);。弹出来的值为0,但如果直接运行COMMIT。ASP弹出的高度却与内容相符。
实在搞不明白那里有冲途。我以前这样作可以,不知道论坛上有没有那个遇过这种问题。
谢谢!
复制代码 代码如下:

parent.document.all("comment_load").style.height=document.body.scrollHeight||document.documentElement.scrollHeight;

试了一下,应该是没什么问题的
<script type="text/javascript">
<!--
onload=function()
{
parent.document.getElementById('ac').style.height="200px";
}
//-->
</script>

<iframe src="comment.asp?classid=2&id=12" allowtransparency="true" name="comment_load" width="540" height="288" marginwidth="0" marginheight="0" align="middle" scrolling="no" frameborder="0"></iframe>
加一个ID属性
PS:如果网页中加入以下头
复制代码 代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

必须用 document.documentElement关于这方面的东西,最好搜下