[jQuery].scrollTop() 函数详解

时间:2022-07-31 14:35:44

scrollTop()函数用于设置或返回当前匹配元素相对于垂直滚动条顶部的偏移

当一个元素的实际高度超过其显示区域的高度时,在一定的设置下,浏览器会为该元素显示相应的垂直滚动条。此时,scrollTop()返回的就是该元素在可见区域之上被隐藏部分的高度(单位:像素)。

如果垂直滚动条在最上面(也就是可见区域之上没有被隐藏的内容),或者当前元素是不可垂直滚动的,那么scrollTop()将返回0。

该函数属于jQuery对象(实例),并且对可见的和隐藏的元素均有效。

语法

jQuery 1.2.6 新增该函数。

jQueryObject.scrollTop( [ value ] )
注意:
1、如果省略了value参数,则表示返回偏移值;如果指定了该参数,则表示设置偏移值。
2、scrollTop()函数的"设置"操作针对的是当前jQuery对象所匹配的每一个元素;"读取"操作只针对第一个匹配的元素。

参数

参数 描述
value 可选/Number类型用于设置的偏移值。
 

返回值

scrollTop()函数的返回值为Number/jQuery类型,返回值的类型取决于scrollTop()函数当前执行的是"设置"操作还是"读取"操作。

如果scrollTop()函数执行的是"设置"操作,则返回当前jQuery对象本身;如果是"读取"操作,则返回第一个匹配元素相对于垂直滚动条顶部的偏移。

如果当前jQuery对象匹配多个元素,返回坐标时,scrollTop()函数只以其中第一个匹配的元素为准。如果没有匹配的元素,则返回null

示例&说明

以下面这段HTML代码为例:

<div id="content" style="width:200px; height: 200px; overflow:auto;">
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
CodePlayer<br>
专注于编程开发技术分享<br>
</div>
<input id="btn" type="button" value="点击" >
<div id="msg"></div>

以下jQuery示例代码用于演示scrollTop()函数的具体用法:

var $content = $("#content");
var $btn = $("#btn");
var $msg = $("#msg"); $btn.click( function(){
    $msg.html ( "content的scrollTop:" + $content.scrollTop() );  
} ); // 设置显示区域之前隐藏119px高度的content的内容
$content.scrollTop( 119 ); 此时,我们在显示页面上点击按钮,即可看到如下效果(我们平常看到的浏览器滚动条也可以视作<body>元素的实际高度超出显示区域的高度,从而出现该滚动条):
[jQuery].scrollTop() 函数详解
此文转自:http://www.365mini.com/page/jquery-scrolltop.htm