亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問為什么document.body.scrollHeight高度為0

<!DOCTYPE HTML>

<html>

<head>

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


</head>

<body>

<script type="text/javascript">

var w = document.documentElement.scrollWidth;

var h = document.documentElement.scrollHeight;

var wb = document.body.scrollWidth;

var hb = document.body.scrollHeight;

document.write(w+"/"+h+"<br/>");

document.write(wb+"/"+hb);

</script>

</body>? ??

</html>

hb輸出結果為0請問為什么呢?


正在回答

3 回答

<style>

? ? ? ? html, body {

? ? ? ? height: 100%;?

??

? ? }

? ? </style>

樣式設置下高度,就能得到正常的了

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

我試了一下scrollTop,我已經凌亂了,無論我用body還是documentElement,scrollTop都是0。

不過照你說的我刪掉了<!DOCTYPE>,scrollHeight確實不是0了,用body的scrollWidth和scrollHeight,與用documentElement的值完全相同了...這是一門玄學

1 回復 有任何疑惑可以回復我~

最近寫了一個拖動層的HTML頁面, ? 需要獲取滾動條當前的位置.

于是我使用document.body.scrolltop獲取y方向滾動的位置...奇怪的事情出現了! 無論滾動條怎么滾動, document.body.scrolltop竟然一直都是0!

對比以前寫的一個頁面.發現區別很小. 舊頁面卻沒有問題.這就怪了...

我開始一點一點的排除,去掉多于的代碼. 直到我去掉文檔最頂部的

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

頁面此時才正常.

原來是這行東西造成IE無法獲取document.body.scrolltop!

把頂部這兩行刪掉將可以了.但是為什么會這樣呢?

google一下,發現改成:

document.body.scrollTop?
要改成?
document.documentElement.scrollTop

0 回復 有任何疑惑可以回復我~
#1

鹿一思 提問者

我試了一下scrollTop,我已經凌亂了,無論我用body還是documentElement,scrollTop都是0。 不過照你說的我刪掉了<!DOCTYPE>,scrollHeight確實不是0了,而是,用body的scrollWidth和scrollHeight,與用documentElement的值完全相同了...本來用body的scrollWidth值相對小一些。這是一門玄學...
2019-04-08 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript進階篇
  • 參與學習       468829    人
  • 解答問題       22582    個

本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界

進入課程

請問為什么document.body.scrollHeight高度為0

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號