基于JS实现新闻列表无缝向上滚动实例代码
2016-01-22 00:00
996 查看
当新闻较多,并且空前有限的时候,使用滚动是一个不错的选择,本章节就通过代码实例介绍一下如何实现此效果。
代码实例如下:
以上代码实现了新闻列表滚动效果,下面介绍一下实现过程:
一.实现原理:
大致原理如下,demo元素中有两个子元素demo1和demo2,并且将demo1中的内容存入demo2中,之所以这样做,是为了当向上滚动的时候,demo2能够接在demo1的后面,否则将不是无缝滚动,而是有缝滚动了,当demo1的内容完全被遮挡之后,也就是demo1完全滚动上去的时候,demo2会恰好位于demo1开始滚动的位置,然后再重新设置demo的scrollTop值,让滚动就重新来过,这样就实现了无缝滚动效果。
基于JS实现新闻列表无缝向上滚动实例代码就给大家介绍到这里,希望大家根据自己的实际需求应用此段代码。
div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox
js向上无缝滚动,网站公告效果 具体代码
可自定义速度的js图片无缝滚动示例分享
JS图片无缝、平滑滚动代码
代码实例如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.jb51.net/" /> <title>文字列表无缝向上滚动代码</title> <style type="text/css"> *{ margin:0px; padding:0px; border:0px; } body{font-size:12px} #demo{ overflow:hidden; height:80px; width:280px; margin:90px auto; position:relative; } #demo1{ height:auto; text-align:left; } #demo2{ height:auto; text-align:left; } #demo1 li{ list-style-type:none; height:22px; text-align:left; text-indent:15px; } #demo2 li{ list-style-type:none; height:22px; text-align:left; text-indent:15px; } </style> <script type="text/javascript"> var speed=40 window.onload=function(){ var demo=document.getElementById("demo"); var demo2=document.getElementById("demo2"); var demo1=document.getElementById("demo1"); demo2.innerHTML=demo1.innerHTML function Marquee(){ if(demo.scrollTop>=demo1.offsetHeight){ demo.scrollTop=0; } else{ demo.scrollTop=demo.scrollTop+1; } } var MyMar=setInterval(Marquee,speed) demo.onmouseover=function(){clearInterval(MyMar)} demo.onmouseout=function(){MyMar=setInterval(Marquee,speed)} } </script> </head> <body> <div id="demo"> <ul id="demo1"> <li><a href="#" target="_blank">脚本之家欢迎您的到来</a></li> <li><a href="#" target="_blank">只有努力才会有美好的明天</a></li> <li><a href="#" target="_blank">没有人一开始就是高手,都是从菜鸟开始</a></li> <li><a href="#" target="_blank">每一天都是新的需要好好珍惜</a></li> <li><a href="#" target="_blank">怨天尤人是没有任何作用的</a></li> <li><a href="#" target="_blank">今天你写代码了吗</a></li> <li><a href="#" target="_blank">分享的胸怀和互助的精神最终成就了你</a></li> </ul> <div id="demo2"></div> </div> </body> </html>
以上代码实现了新闻列表滚动效果,下面介绍一下实现过程:
一.实现原理:
大致原理如下,demo元素中有两个子元素demo1和demo2,并且将demo1中的内容存入demo2中,之所以这样做,是为了当向上滚动的时候,demo2能够接在demo1的后面,否则将不是无缝滚动,而是有缝滚动了,当demo1的内容完全被遮挡之后,也就是demo1完全滚动上去的时候,demo2会恰好位于demo1开始滚动的位置,然后再重新设置demo的scrollTop值,让滚动就重新来过,这样就实现了无缝滚动效果。
基于JS实现新闻列表无缝向上滚动实例代码就给大家介绍到这里,希望大家根据自己的实际需求应用此段代码。
您可能感兴趣的文章:
JS图片无缝滚动(简单利于使用)div+css+js实现无缝滚动类似marquee无缝滚动兼容firefox
js向上无缝滚动,网站公告效果 具体代码
可自定义速度的js图片无缝滚动示例分享
JS图片无缝、平滑滚动代码
相关文章推荐
- JavaScript学习笔记整理之引用类型
- JavaScript实现仿淘宝商品购买数量的增减效果
- 很全面的JavaScript常用功能汇总集合
- 在JavaScript中call()与apply()区别
- 基于JavaScript实现高德地图和百度地图提取行政区边界经纬度坐标
- 详解javascript传统方法实现异步校验
- js简单设置与使用cookie的方法
- JavaScript权威指南(4)——语句
- javascript多物体运动元素共享?no
- js封装多物体运动函数
- js中封装多物体运动及透明度变化函数
- JavaScript运动框架详解
- js循环运动的实现
- LeetCode 263.Ugly Number
- LeetCode 231.power of two
- JavaScript模块化编程
- JS解析XML文件和XML字符串
- JS字符串操作
- 商城商品购买数量增减的完美JS效果
- JS中Unexpected identifier错误