纯js实现无缝滚动功能代码实例
这篇文章主要介绍了纯js实现无缝滚动功能代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
HTML代码
CSS代码
#marquee_self*{ margin:0; padding:0; } #marquee_self{ width:1620px;//所有图片长度个数*width height:100px;//图片高度 //margin:100pxauto;居中 background-color:#646464; position:relative; overflow:hidden; } #marquee_selful{ position:absolute; left:0; top:0; overflow:hidden;//li中超出部分隐藏掉 background-color:#3b7796;//背景色用来看问题 } #marquee_selfulli{ float:left;//左对齐变为图片水平 width:180px;//图片宽度 height:100px;//图片高度 list-style:none;//无间隙 }
JS代码
window.onload=function(){ varoDiv=document.getElementById('marquee_self');//容器节点 varoUl=document.getElementById('marquee_ul');//ul节点 varspeed=-2;//初始化速度,默认往左 oUl.innerHTML+=oUl.innerHTML;//ul中图片内容翻倍 varoLi=oUl.getElementsByTagName('li');//获取ul节点下所有li集合 oUl.style.width=oLi.length*180+'px';//设置ul的宽度翻倍后的宽度,使图片可以放下 /*varoBtn1=document.getElementById('btn_left');左移动按钮 varoBtn2=document.getElementById('btn_right');右移动按钮*/ functionmove(){ if(oUl.offsetLeft<-(oUl.offsetWidth/2)){//向左滚动,当向左滚动超过总ul长度一半时 oUl.style.left=0;//变为从头开始 } if(oUl.offsetLeft>0){//向右滚动,当靠右的图1移出边框时 oUl.style.left=-(oUl.offsetWidth/2)+'px'; } oUl.style.left=oUl.offsetLeft+speed+'px';//图片移动 } /*oBtn1.addEventListener('click',function(){//向左移动按钮点击事件 speed=-2; },false); oBtn2.addEventListener('click',function(){//向右移动按钮点击事件 speed=2; },false);*/ vartimer=setInterval(move,30);//全局变量,保存返回的定时器 oDiv.addEventListener('mouseout',function(){//鼠标移开添加计时器 timer=setInterval(move,30); },false); oDiv.addEventListener('mousemove',function(){//鼠标移入清除定时器 clearInterval(timer); },false); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。