scrollTop不返回视口上方的距离

时间:2013-05-23 03:25:57

标签: jquery

当有人在这个jsfiddle中向上滚动时,有没有人知道为什么scrollTop()不会在视口上方返回#box的数量 - http://jsfiddle.net/qD7Yh/ - ?单击该框将返回当前的scrollTop。

jQuery是:

$(document).ready(function(){
    $('#box').click(function() {
    alert("scrollTop() for box is " + $('#box').scrollTop());
    });
});

由于

1 个答案:

答案 0 :(得分:2)

函数scrollTop()返回距您正在调用的元素顶部的距离,因此在当前语法中,函数返回滚动 in 框中的数量,因为它没有任何滚动条或可滚动的内容,是0.你的代码可以工作,你的<div>应该有一些溢出的内容,这应该允许它滚动,从而增加scrollTop()值< / p>

试试这个:

的CSS:

#box{
    width:200px;
    height:100px;
    line-height:200px;
    overflow: scroll;
    background-color: beige;
    border:1px solid brown;
}

HTML:

<div id="box"><p>Hello there</p><p>This is a test</p></div>

的javascript:

$(document).ready(function(){
    $('#box').click(function() {
        alert("scrollTop() for box is " + $('#box').scrollTop());
    });
});

找出文档/窗口scrollTop()

如果您想了解滚动了多少文档(因为该框大于窗口的高度),请使用$(window).scrollTop()$(document).scrollTop()