星空网 > 软件开发 > Java

原生javascript实现的水平图片无缝滚动效果

原生javascript实现的水平图片无缝滚动效果:
图片水平无缝滚动效果在大量的网站都有应用,特别是一些企业网站在展示产品的时候,因为是动态效果,所以能够给网站增色不少,相比静态图片展示更能够吸引用户的注意力,下面就通过实例代码介绍一下如何实现此效果。
代码如下:

<!DOCTYPE html><html><head><meta charset=" utf-8"><meta name="author" content="http://www.softwhy.com/" /><title>蚂蚁部落</title><style type="text/css"> #demo{  background:#FFF;  overflow:hidden;  border:1px dashed #CCC;  width:500px; } #indemo{ float:left; width:2000px;} #indemo a{ width:100px; height:100px; float:left; background-color:blue; margin-left:5px; text-align:center; line-height:100px; color:red; text-decoration:none;}#demo1{float:left;} #demo2{float:left;} </style><script type="text/javascript"> window.onload=function(){ var speed=10;  var tab=document.getElementById("demo");  var tab1=document.getElementById("demo1");  var tab2=document.getElementById("demo2");  tab2.innerHTML=tab1.innerHTML;  function Marquee(){   if(tab2.offsetWidth-tab.scrollLeft<=0){   tab.scrollLeft-=tab1.offsetWidth   }   else{    tab.scrollLeft++;   }  }  var MyMar=setInterval(Marquee,speed);  tab.onmouseover=function() {clearInterval(MyMar)};  tab.onmouseout=function() {MyMar=setInterval(Marquee,speed)}; } </script></head><body><div id="demo"> <div id="indemo">  <div id="demo1">    <a href="#">蚂蚁部落一</a>    <a href="#">蚂蚁部落二</a>    <a href="#">蚂蚁部落三</a>    <a href="#">蚂蚁部落四</a>    <a href="#">蚂蚁部落五</a>    <a href="#">蚂蚁部落六</a>   </div>  <div id="demo2"></div> </div></div></body></html>

以上代码实现了我们要求,为了掩饰方便,将图片替换为文字,实际应用中,只要稍加修改就可以了,代码很简单,但是对于初学者来说可能就有点麻烦,下面就对它做一下注释。
一.代码注释:
1.window.onload=function(){},当文档内容完全加载完毕再去执行函数中的代码。
2.var speed=10,设置滚动的速度,值越小速度越快。
3.var tab=document.getElementById("demo"),根据id属性值获取对象。
4.tab2.innerHTML=tab1.innerHTML,复制一份内容给tab2.
5.function Marquee(){},此函数是滚动的核心实现。
6.if(tab2.offsetWidth-tab.scrollLeft<=0){tab.scrollLeft-=tab1.offsetWidth } ,判断向左滚动的尺寸是否小于等于tab2或者tab1的宽度,如果小于等于,则说明一个完整的图片队列滚动完毕,这个时候是tab2的接续在tab1的后面,这个时候重新设置tab.scrollLeft为0,也就是重新开始滚动,这样就实现了无缝滚动效果。
二.相关阅读:
1.innerHTML属性可以参阅js的innerHTML属性的用法一章节。 
2.offsetWidth属性可以参阅scrollTop、offsetHeight和offsetTop等属性用法详解一章节。 
3.scrollLeft属性可以参阅offsetLeft、clientLeft和scrollLeft等属性的用法一章节。 
4.setInterval()函数可以参阅setInterval()函数用法详解一章节。
5.clearInterval()函数可以参阅window对象的clearInterval()方法一章节。  

原文地址是:http://www.softwhy.com/forum.php?mod=viewthread&tid=11997

更多内容可以参阅:http://www.softwhy.com/javascript/




原标题:原生javascript实现的水平图片无缝滚动效果

关键词:JavaScript

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

JaronTam:https://www.goluckyvip.com/tag/21661.html
Jarvee:https://www.goluckyvip.com/tag/21662.html
jasgood:https://www.goluckyvip.com/tag/21663.html
Jason:https://www.goluckyvip.com/tag/21664.html
Jason He:https://www.goluckyvip.com/tag/21665.html
Jason Lang:https://www.goluckyvip.com/tag/21666.html
九月初新疆旅游服装搭配(新疆游玩必备衣服清单):https://www.vstour.cn/a/408257.html
黄果树瀑布景区景点 - 黄果树瀑布景区景点分布图:https://www.vstour.cn/a/408258.html
相关文章
我的浏览记录
最新相关资讯
海外公司注册 | 跨境电商服务平台 | 深圳旅行社 | 东南亚物流