0

每隔 5 秒调用 document.body.scrollHeight 的警报时,警报会返回文档的初始滚动高度,但即使页面的滚动高度发生明显变化,警报也不会改变。有没有办法让它返回页面的实际滚动高度,而不仅仅是初始值?

代码/伪代码

<script>
    setInterval(function() {
        alert(document.body.scrollHeight);
    }, 5000);

    function extendHeight() {
    document.getElementById('box').style.height = 1000;
    }
</script>

<body>
  <div id='box' style='height: 500px;'>
    <button onClick="extendHeight();">Change Height</button>
  </div>
</body>

即使单击按钮后,警报也会返回 500 像素。

4

1 回答 1

1

问题是你应该分配'1000px'document.getElementById('box').style.heightnot 1000

<script>
    setInterval(function() {
        alert(document.body.scrollHeight);
    }, 5000);

    function extendHeight() {
    document.getElementById('box').style.height = "1000px";
    }
</script>

<body>
  <div id='box' style='height: 500px;'>
    <button onClick="extendHeight();">Change Height</button>
  </div>
</body>

小提琴:http: //jsfiddle.net/kzLEr/

于 2012-05-24T15:29:00.583 回答