点击上面或下面的按钮可以让这个列表滚动起来,点一下,滚一下 大概就这意思 给个思路
参考这个
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<style>
* {
margin: 0;
padding: 0;
}
ul {
width: 100px;
height: 120px;
overflow-y: auto;
overflow-x: hidden;
}
ul li {
list-style: none;
width: 100%;
height: 30px;
border: 1px solid red;
text-align: center;
}
</style>
</head>
<body>
<button id="pret">上</button>
<ul id="box">
<li>
222
</li>
<li>
222
</li>
<li>
222
</li>
<li>
222
</li>
<li>
222
</li>
</ul>
<button id="next">下</button>
</body>
<script>
let pret = document.getElementById("pret");
let next = document.getElementById("next");
let box = document.getElementById("box");
next.addEventListener("click", () => {
if(box.scrollTop>150){ //这里我是写死的,你可以获取ul下li的个数*每个高度 //大于这个就不让它加了
return
}
box.scrollTop = box.scrollTop + 30;
})
pret.addEventListener("click", () => {
if(box.scrollTop<=0){ //这里我是写死的,你可以获取ul下li的个数*每个高度 //大于这个就不让它加了
return
}
box.scrollTop = box.scrollTop -30;
})
</script>
</html>
JS控制滚动条的位置:
window.scrollTo(x,y);
参考一下,很简单的
竖向滚动条置顶(window.scrollTo(0,0);
竖向滚动条置底 window.scrollTo(0,document.body.scrollHeight)
JS控制TextArea滚动条自动滚动到最下部
document.getElementByIdx_x('textarea').scrollTop = document.getElementByIdx_x('textarea').scrollHeight
获得滚动条距离顶部位置
function getScrollTop(){
var scrollTop=0;
if(document.documentElement&&document.documentElement.scrollTop){
scrollTop=document.documentElement.scrollTop;
}else if(document.body){
scrollTop=document.body.scrollTop;
}
return scrollTop;
}