【前言】
纯JS实现文字或新闻竖直方向滚动,先看个案例
【主体】
(1)JS获取数值方向滚动距离selector.scrollTop
(2)JS获取元素高度(包含边框和内边距)selector.offectHeight
(3)高度获取
1、clientHeight:height+上下padding(内部可视区高度)
2、offsetHeight:height+上下padding+上下border-width(div的可视高度)
3、scrollHeight:内容的实际高度+上下padding(如果没有限制div的height,即height是自适应的,一般是scrollHeight==clientHeight)
4、height:在几个浏览器中都是undefined
5、style.height:遗憾的是只有将高度定义在元素的style属性中这个变量才有效,如果是抽取到了样式表中是无法取到的
(4)本例中我们用到了offectHeight来获取元素高度
代码:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>文字滚动</title> <style type="text/css"> /*代码初始化*/ *{ margin: 0; padding: 0; } ul li,ol li{ list-style-type: none; } a{ text-decoration: none; } /*代码主体*/ .main{ width: 300px; height: 400px; border: 1px solid rgba(0,0,0,0.3); margin: 10px auto; box-shadow: 0 0 10px rgba(0,0,0,0.5); overflow-y: hidden; } .show1 li,.show2 li{ width: 100%; height: 100px; border-bottom: 1px solid rgba(0,0,0,0.2); box-sizing: border-box; line-height: 100px; text-align: center; font-size: 26px; cursor: pointer; } </style> </head> <body> <div class="main"> <ul class="show1"> <li>新闻1</li> <li>新闻2</li> <li>新闻3</li> <li>新闻4</li> <li>新闻5</li> <li>新闻6</li> <li>新闻7</li> <li>新闻8</li> </ul> <ul class="show2"> </ul> </div> <script type="text/javascript"> var main = document.getElementsByClassName("main")[0]; var show1 = document.getElementsByClassName("show1")[0]; var show2 = document.getElementsByClassName("show2")[0]; var timeId; show2.innerHTML = show1.innerHTML; timeId = setInterval(play,25); function play(){ if (main.scrollTop >= show1.offsetHeight) { main.scrollTop=0; }else{ main.scrollTop++; } } play(); main.onmouseover = function(){ clearInterval(timeId) }; main.onmouseout = function(){ timeId = setInterval(play,25); }; </script> </body> </html>
.
相关推荐
文字上下轮播滚动,纯js实现,结构简单明了,几行代码即可
纯javascript实现文字、图片无限滚动效果
jQuery 实现文字上下滚动
逐行定期滚动JS代码 基于JQUERY 逐行定期滚动JS代码 基于JQUERY 逐行定期滚动JS代码 基于JQUERY
一款简单的js+css3文字上下滚动切换动画特效,可设置多种不同颜色的文字。
纯js实现单行文字滚动 无需任何js库支持 直接运行
网上找到很多文字滚动,但都良莠不齐,基本都是左右滚动的,没有上下滚动。所以来分享一波 利用scortop实现文字移动,判断如果第一个元素的高度,如果小于等于了scrolltop(翻滚了多少高度)就把它删除并且添加到...
用JS实现图片或文字向上或向下无缝隙滚动
js实现文字内容无缝循环滚动动画效果,效果显示 http://t.harjes.cn/wfgd/ 使用方法简单,希望对有需要的人有帮助
逐行向上滚动js代码,鼠标移上停止滚动,不满一屏的时候不滚动
js文字间隔滚动上下滚动
实现跑马灯上下滚动效果,marquee标签被摒弃后不使用js实现的跑马灯效果保险些
JS实现上下无限滚动 完美支持主流浏览器 JS实现上下无限滚动 完美支持主流浏览器 JS实现上下无限滚动 完美支持主流浏览器
jQuery文字逐行向上滚动代码是一款实用的文字滚动代码下载。
主要为大家详细介绍了JavaScript实现公告栏上下滚动效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了Vue实现跑马灯样式文字横向滚动的具体代码,供大家参考,具体内容如下 需求: 在Vue项目的顶部,来实现文字左右滚动 步骤: 1、可以自己封装一个组件,也可以自己写,也可以复制以下代码 ...
纯javascript制作,文字上下无缝滚动。
JS实现文字间隔性滚动代码 可以用于网站滚动新闻特效
jQuery单行文字上下不间断循环滚动效果,适合做新闻滚动推荐
js 实现 table中的文字滚动! 值得下载看看!资源免费,大家分享!!