本文介绍如何使用 JavaScript 实现带有停顿效果的垂直滚动功能。通过配置滚动时间和暂停时间,结合 HTML 列表结构与 CSS 样式控制,实现平滑且可控制的滚动展示效果。
JavaScript 滚动逻辑实现
var ScrollMiddle = {
'Odiv':document.getElementById('comment'), // 目标DOM
'Oli': document.getElementById('comment').getElementsByTagName('li'),
'times':30, // 配置滚动时间
'delay':1000, // 配置暂停的时间
inint:function(){
this.size = this.Oli.length;
this.height = 59;
this.countHeight =this.size * this.height;
this.Odiv.innerHTML+=this.Odiv.innerHTML;
this.timer = null;
},
scroll:function(){
var _this = this;
_this.inint();
function scrolls(){
var scrollValue = _this.Odiv.scrollTop;
var sub_timer = null;
var num=0;
if(scrollValue>=_this.countHeight){
_this.Odiv.scrollTop = 0;
}else{
_this.Odiv.scrollTop++;
if(scrollValue%_this.height==0){
clearInterval(_this.timer)
function delay(){
num++;
if(num==3){
num=0;
clearInterval(sub_timer);
sub_timer = null;
clearInterval(_this.timer)
_this.timer = setInterval(scrolls,_this.times);
return false;
}
}
sub_timer = setInterval(delay,_this.delay)
}
}
}
this.timer = setInterval(scrolls,_this.times);
}
}
调用方法如下:
ScrollMiddle.scroll();
HTML 结构部分:
HTML 列表结构
<ul id="comment">
<li></li>
......
</ul>
CSS 结构部分:
CSS 样式控制
#comment{
width:200px;
height:200px;
overflow:hidden;
}
以上即为 JS 实现可停顿垂直滚动的完整代码示例,供参考使用。