下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
原生JS实现匀速图片轮播动画需求:1根据图片动态添加小圆点2目标移动到小圆点轮播图片3鼠标离开图片,定时轮播图片;鼠标在图片上时暂停4左右两侧可点击轮播图片一、布局部分html部分<divclass="wmainclearfix"><!--主内容部分开始--><divclass="slider"><!--轮播图部分开始--><ulclass="imgs"id="slider_imgs"><li><imgsrc="images/slider01.jpg"id="slider1"alt=""/></li><li><imgsrc="images/slider02.jpg"id="slider2"alt=""/></li><li><imgsrc="images/slider03.jpg"id="slider3"alt=""/></li><li><imgsrc="images/slider04.jpg"id="slider4"alt=""/></li><li><imgsrc="images/slider05.jpg"id="slider5"alt=""/></li><li><imgsrc="images/slider01.jpg"id="slider0"alt=""/></li></ul><divclass="arrow"id="arrow"><ahref="javascript:;"class="arrow_1"><</a><ahref="javascript:;"class="arrow_2">></a></div></div><!--轮播图部分结束--></div>css部分.sliderul.imgs{height:453px;width:4380px;position:absolute;}.sliderul.imgsli{display:block;width:730px;height:453px;float:left;}.slider.circle{position:absolute;left:50%;bottom:8px;}.slider.circleli{cursor:pointer;float:left;width:18px;height:18px;margin:4px;background-color:#3e3e3e;border-radius:50%;text-align:center;color:#fff;}.slider.circleli.current{background:pink;color:white;}JS部分1这是匀速动画函数的封装/****obj:做动画的DOM对象***target:对象最终运动到的目标位置(X轴)*/functionanimate(obj,target){//每次调用要先清定时器clearInterval(obj.Timer);//根据目标位置判断移动的方向,每到目标位置步长为20,否则为-20varspeed=target>obj.offsetLeft?20:-20;obj.Timer=setInterval(function(){varleft=obj.offsetLeft;obj.style.left=left+speed+"px";varresult=target-left;//目标位置与当前位置在步长20以内,则到达目标位置if(Math.abs(result)<=20){//停止运动clearInterval(obj.Timer);//有20像素差距我们直接跳转目标位置obj.style.left=target+"px";}},2函数:`这里写代码片0);}轮播图封装函数:functionslider(){//焦点图信息DOM节点varimgs=document.getElementById("slider_imgs");varslides=imgs.parentNode;varlis=imgs.getElementsByTagName("li");vararrows=document.getElementById("arrow");vararrowLink=arrows.children;//创建小圆点varcircle=document.createElement("ol");circle.setAttribute("class","circle");imgs.parentNode.appendChild(circle);for(vari=0,len=lis.length-1;i<len;i++){varli=document.createElement("li");LHTML=i+1;circle.appendChild(li);}//marginLeft=-imgli(length)*olLi(width)/2circle.style.marginLeft=(-13*len)+"px";varolLis=circle.children;olLis[0].className="current";//为小圆点添加鼠标事件for(vari=0;i<olLis.length;i++){//当前小圆点索引olLis[i].index=i;olLis[i].onmouseover=function(){for(varj=0;j<olLis.length;j++){olLis[j].className="";}this.className="current";//图片切换imgs的CSS部分加上定位animate(imgs,this.index*(-lis[0].offsetWidth));//当鼠标挪到定时器,当前播放图片与原点位置回原k=z=p=q=this.index;};}//鼠标移动到轮播图,不定时播放slides.onmouseover=function(){//清除自动轮播定时器clearInterval(Time);};//鼠标移开,自动轮播slides.onmouseout=function(){Time=setInterval(autoPlay,1000);};//定时器部分varTime=null,k=0,z=0;Time=setInterval(autoPlay,1000);//自动轮播图片,定时器TimefunctionautoPlay(){k++;if(k>lis.length-1){imgs.style.left=0;k=1;}animate(imgs,k*(-lis[0].offsetWidth));z++;if(z>olLis.length-1){z=0;}for(varj=0;j<olLis.length;j++){olLis[j].className="";}olLis[z].className="current";}varq=0;varp=0;arrowLink[1].onclick=function(){q++;if(q>lis.length-1){imgs.style.left=0;q=1;}p++;if(p>olLis.length-1){
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 建筑施工现场餐饮管理手册
- 2025年河南建筑职业技术学院招聘工作人员30人考试笔试模拟试题及答案解析
- 节能降耗的选矿流程改进技术-洞察及研究
- 2025年12月广西南宁市青秀区茅桥社区卫生服务中心招聘2人笔试考试参考试题及答案解析
- 环境服务保障安全生产的模式探讨-洞察及研究
- 2025云南曲靖市陆良县供销社联合社招聘公益性岗位人员2人笔试考试参考试题及答案解析
- 产业融合知识创新路径-洞察及研究
- 2025黑山农业科技园区产业集群竞争力评估互补效应分析研究报告
- 2025鲜花种植及销售行业市场分析与发展潜力研究行业竞争格局分析报告
- 2025骨骼材料行业市场分析及发展趋势与投资规划研究报告
- 数据资产管理实践指南8.0
- 2025年6月浙江省高考物理试卷真题(含答案解析)
- 2025年广西公需真题卷及答案
- 行政案例分析-终结性考核-国开(SC)-参考资料
- 研究生学术英语视听说陈新仁课后参考答案
- 2023-2024学年新疆维吾尔自治区乌鲁木齐市小学数学六年级上册期末模考测试题
- GB/T 15814.1-1995烟花爆竹药剂成分定性测定
- GB/T 11446.7-2013电子级水中痕量阴离子的离子色谱测试方法
- 中国地质大学武汉软件工程专业学位研究生实践手册
- 《民法》全册精讲课件
- 山东大学2021年量子力学试题
评论
0/150
提交评论