JavaScript控制页面滚动条位置与属性详解

作者:竹影

时间:2026-10-26

浏览:450

本文介绍JavaScript中控制页面滚动条位置的两种主要方法:通过DOM元素的scrollTop和scrollLeft属性直接设置滚动位置,以及利用HTML锚点实现跳转。同时详细解析了scrollTop、scrollLeft、scrollHeight等关键滚动属性的含义,提供了非IE与IE浏览器的兼容写法,并给出了平滑滚动至指定位置的代码示例,帮助开发者掌握滚动条控制技巧。

文章目录

JavaScript控制整个页面滚动条的位置

方法一

1、通过修改div元素的scrollTop属性来调整垂直滚动条的位置,通过修改scrollLeft属性来调整水平滚动条的位置。

示例:

<body>
//d1是外层div,带滚动条
<div id='d1' style='height:200px;width:100px;overflow:auto;background:blue;'>
<div style='height:500px;width:500px;background:yellow'>2222</div>
</div>
</body>
<script>
document.getElementById('d1').scrollTop=100;//通过scrollTop设置滚动到100位置
document.getElementById('d1').scrollLeft=200;//通过scrollTop设置滚动到200位置
</script>

方法二

2、利用HTML锚点实现滚动定位

如下:

<a href="#test" rel="external nofollow" >aaaaa</a>
<div id="test">lalallalalalala</div>

JavaScript滚动条属性及滚动速度设置

返回不带px单位的数值,不使用负数,最小值为0。

  • .scrollTop:表示竖直滚动条距离顶部的距离,即浏览器视口外部的高度
  • .scrollLeft:表示水平滚动条距离最左边的距离
  • .scrollHeight:表示滚动内容区域的总高度

返回整个窗口的滚动条数值

非IE浏览器

返回整个窗口的滚动条数值

  • document.documentElement.scrollTop:表示竖直滚动条距离顶部的距离
  • document.documentElement.scrollLeft:表示水平滚动条距离最左边的距离

IE与非IE浏览器获取滚动条数值的兼容写法

var temp=document.documentElement.scrollTop||document.body.scrollTop

JavaScript控制整个页面滚动条的位置

设置滚动条速度的代码示例

<html>
	<head>
		<meta charset="utf-8">
		<title>滚动事件</title>
		<style>
			div{
				height:2000px;
				
			}
			button{
				position:fixed;
				bottom: 100px;
				right: 100px;
			}
		</style>
	</head>
	<body>
		<div>
		<button class="btn">去那里</button>
	
	
		</div>
		
		<script>
			var button=document.querySelector("button");
			
			button.onclick=function(){
				var id=setInterval(function(){
					if(document.documentElement.scrollTop>0)
					{
						document.documentElement.scrollTop-=100;
						
						//当滑动条距顶部为0时,结束间隔任务
						if(document.documentElement.scrollTop==0)
						{
							clearInterval(id);
						}
					}
				},500);
				
			}
			
		</script>
	</body>
</html>

以上为个人经验,希望能给大家一个参考,也希望大家多多支持本站。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章