为了账号安全,请及时绑定邮箱和手机立即绑定

为什么高输出为0?

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">

</head>

<body>

<script type="text/javascript">

document.write("当前窗口宽:"+document.body.clientWidth+"<br />"+"当前窗口高:"+document.body.clientHeight);


</script>

</body>

</html>


正在回答

2 回答

因为你body没有内容,body没有被撑开高度就是0;

注意:document.write()添加的内容不会实际写入body中
你在body中随便打些数字就有高度了

4 回复 有任何疑惑可以回复我~
#1

DOFOR 提问者

非常感谢!
2017-08-08 回复 有任何疑惑可以回复我~
#2

慕圣9424722

如果document.write()添加的内容不会实际写入body中, 那下面代码中document.body.clientHeight为什么有值呢,他显示的是前两段代码输出后的高度。 <script type="text/javascript"> document.write(window.innerHeight+"<br>"+window.innerWidth+"<br>") document.write(document.body.clientWidth+"<br>"+document.body.clientHeight+"<br>") </script>
2017-08-22 回复 有任何疑惑可以回复我~
#3

慕圣9424722

document.write(window.innerHeight+"<br>"+window.innerWidth+"<br>") document.write(document.documentElement.clientHeight+"<br>"+document.documentElement.clientWidth+"<br>") document.write(document.body.clientWidth+"<br>"+document.body.clientHeight+"<br>")
2017-08-22 回复 有任何疑惑可以回复我~
#4

qq_与赠_03193390

这跟body里面有没有内容有什么关系,它显示的当前浏览器可视区域的高和宽
2017-09-17 回复 有任何疑惑可以回复我~
查看1条回复

不兼容;

兼容写法:

<!DOCTYPE HTML>
<html>
<head>
   <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
</head>
<body>
<script type="text/javascript">
   var w=document.body.clientWidth||document.documentElement.clientWidth;
   var h=document.body.clientHeight||document.documentElement.clientHeight;
   document.write("当前窗口宽:"+w+"<br>"+"当前窗口高:"+h);

</script>
</body>
</html>

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468061    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

为什么高输出为0?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信