我希望在滚动条快拉到底的时候,加载一些内容到页面上。
网上查了一下,说是用三个值来做比较:
(1)scrollTop:已经下拉的距离(页面隐藏在当前浏览器窗口上面的高度)
(2)scrollHeight:是指整个页面的实际高度。
(3)clientHeight:当前浏览器窗口的可视高度。
(我理解为当scrollTop + clientHeight = scrollHeight时,说明拉到底了。)
但是我在chrome和ie8里测试出来发现这三个值之间的关系明显对不起来,不知为何,求高手指导。
谢谢!
$(window).scroll(function () {
var scrollTop = document.body.scrollTop;
var scrollHeight = document.body.scrollHeight;
var clientHeight = document.body.clientHeight;
//alert(scrollTop.toString() + "," + scrollHeight.toString() + "," + clientHeight.toString());
});
网上查了一下,说是用三个值来做比较:
(1)scrollTop:已经下拉的距离(页面隐藏在当前浏览器窗口上面的高度)
(2)scrollHeight:是指整个页面的实际高度。
(3)clientHeight:当前浏览器窗口的可视高度。
(我理解为当scrollTop + clientHeight = scrollHeight时,说明拉到底了。)
但是我在chrome和ie8里测试出来发现这三个值之间的关系明显对不起来,不知为何,求高手指导。
谢谢!
$(window).scroll(function () {
var scrollTop = document.body.scrollTop;
var scrollHeight = document.body.scrollHeight;
var clientHeight = document.body.clientHeight;
//alert(scrollTop.toString() + "," + scrollHeight.toString() + "," + clientHeight.toString());
});
function myFun(oDiv) {
var n1 = parseInt(oDiv.scrollTop);
var n2 = parseInt(oDiv.clientHeight);
var n3 = parseInt(oDiv.scrollHeight); (n1 + n2 == n3) && alert('终于到达最底端');
}
</script>
<div id="div1" onscroll='myFun(this)' style="border: 1px #ff9966 dashed; width: 400;
height: 100px; overflow-x: hidden; overflow-y: scroll">
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?<br />
是否到最底端?
</div>
看看可以不
我用最基本的html(1楼那样的)测出来是正确的,但是如果是复杂一点的计算出来就不对了。