JS实现新闻列表无缝向上滚动实例代码

首页

2018-12-10

  当新闻较多,并且空前有限的时候,使用滚动是一个不错的选择,本章节就通过代码实例介绍一下如何实现此效果。   代码实例如下:!DOCTYPEhtmlhtmlheadmetacharset=utf-8metaname=authorcontent=/title文字列表无缝向上滚动代码/titlestyletype=text/css*{margin:0px;padding:0px;border:0px;}body{font-size:12px}#demo{overflow:hidden;height:80px;width:280px;margin:90pxauto;position:relative;}#demo1{height:auto;text-align:left;}#demo2{height:auto;text-align:left;}#demo1li{list-style-type:none;height:22px;text-align:left;text-indent:15px;}#demo2li{list-style-type:none;height:22px;text-align:left;text-indent:15px;}/stylescripttype=text/javascriptvarspeed==function(){vardemo=(demo);vardemo2=(demo2);vardemo1=(demo1);=(){if(=){=0;}else{=+1;}}varMyMar=setInterval(Marquee,speed)=function(){clearInterval(MyMar)}=function(){MyMar=setInterval(Marquee,speed)}}/script/headbodydivid=demoulid=demo1liahref=#target=_blank脚本之家欢迎您的到来/a/liliahref=#target=_blank只有努力才会有美好的明天/a/liliahref=#target=_blank没有人一开始就是高手,都是从菜鸟开始/a/liliahref=#target=_blank每一天都是新的需要好好珍惜/a/liliahref=#target=_blank怨天尤人是没有任何作用的/a/liliahref=#target=_blank今天你写代码了吗/a/liliahref=#target=_blank分享的胸怀和互助的精神最终成就了你/a/li/uldivid=demo2/div/div/body/html  大致原理如下,demo元素中有两个子元素demo1和demo2,并且将demo1中的内容存入demo2中,之所以这样做,是为了当向上滚动的时候,demo2能够接在demo1的后面,否则将不是无缝滚动,而是有缝滚动了,当demo1的内容完全被遮挡之后,也就是demo1完全滚动上去的时候,demo2会恰好位于demo1开始滚动的位置,然后再重新设置demo的scrollTop值,让滚动就重新来过,这样就实现了无缝滚动效果。