JavaScript实现无缝文字滚动效果
作者:异步漫步时间:2026-10-29 22:50:04浏览:122
本文介绍如何使用JavaScript实现网页文字无缝滚动效果。通过CSS控制容器溢出隐藏与尺寸,利用JS复制内容块实现视觉连续,并配合定时器控制滚动频率及鼠标悬停暂停逻辑,提供完整的HTML、CSS及JS代码示例供参考。
JavaScript文字滚动效果实现
本文分享一段使用JavaScript实现文字滚动效果的完整代码示例,供开发者参考学习。
首先展示预期的运行效果。由于滚动是动态过程,静态页面无法直接呈现最终视觉效果。

具体实现方案包含以下三个部分:
第一步是CSS样式定义:
<style type="text/css">
body,ul,li,a,p,div{padding:0px; margin:0px; font-size:14px;}
ul,li{list-style:none;}
a{ text-decoration:none; color:#333;}
#demo{
overflow:hidden; /*溢出的部分不显示*/
width:290px;
height:228px;/*一定要确切,避免demo1与demo2之间的距离过大*/
padding:5px;
margin:50px auto;
}
#express li{
list-style:none;
font-size:14px;
height:25px;
margin:0px 5px;
line-height:180%;/*行与行之间的距离*/
letter-spacing:2px;/*字与字之间的距离*/
border-bottom:1px dashed #ccc;
cursor:pointer;
}
</style>
第二步是HTML结构搭建:
<div id="demo" >
<div id="demo1" >
<ul id="express">
<li><a href="#">召开背街小巷综合整治工作调度会</a></li>
<li><a href="#">平原街道加大出店经营整治</a></li>
<li><a href="#">平原街道召开计生业务培训会</a></li>
<li><a href="#">平原街道:干部进村入户宣传促征迁</a></li>
<li><a href="#">平原街道:为返乡群众免费孕检</a></li>
<li><a href="#">平原街道:狠抓春运道路交通安全</a></li>
</ul>
</div>
<div id="demo2"></div>
</div>
第三步是核心的JavaScript逻辑实现:
<script type="text/javascript">
//获取id=demo,id=demo1,id=demo2的元素对象,并把id=demo1的内容赋值给id=demo2
var demo=document.getElementById("demo");
var demo1=document.getElementById("demo1");
var demo2=document.getElementById("demo2");
demo2.innerHTML=demo1.innerHTML;
//给demo1,demo2加相同的高度
demo1.style.height=demo.offsetHeight+"px";
demo2.style.height=demo.offsetHeight+"px";
//定时器,每隔50毫秒调用一次scrollup()函数,来实现文字的滚动
var timer=window.setInterval("scrollup()",50);
//定义函数
function scrollup()
{
//如果demo滚上去的高度大于demo的高度,重新给demo赋值从0再开始滑动
if(demo.scrollTop>=demo.offsetHeight)
{
demo.scrollTop=0;
}else
{
demo.scrollTop++;
}
}
//鼠标放上停止滚动,鼠标离开继续滚动
demo.onmouseover=function(){
//清除定时器
clearInterval(timer);
}
demo.onmouseout=function(){
//添加定时器
timer=window.setInterval("scrollup()",50);
}
</script>
以上内容即为JavaScript实现文字滚动的完整方案,希望对掌握前端交互设计有所帮助。
作者最新文章
D3.js 比例尺与坐标轴的配置详解
2026-11-05 16:54:46
JavaScript怎么遍历对象的Symbol键和不可枚举属性
2026-11-05 13:13:39
封装一个健壮的JS字符串判空工具函数
2026-11-05 12:16:14
JavaScript合并数组的三种常用方法:concat、扩展运算符与push
2026-11-05 11:22:29
JavaScript立即执行函数(IIFE)是什么及基本语法
2026-11-05 10:51:19
