原生JS实现轮播图效果
网络编程 2021-07-04 16:46www.168986.cn编程入门
这篇文章主要为大家详细介绍了原生JS实现轮播图效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
学习前端也有一小段时间了,当初在学习javascript的时候,练手的一个轮播图实例,轮播图也是挺常见的了。
着是通过获取图片偏移量实现的,也实现了无缝切换,还有一点问题就是没有加上图片切换的时候的延迟了。
html:
<div id="container"> <div id="list" style="left: -600px;"> <img src="../image/1.jpg" alt="5"> <img src="../image/1.jpg" alt="1"> <img src="../image/2.jpg" alt="2"> <img src="../image/3.jpg" alt="3"> <img src="../image/4.jpg" alt="4"> <img src="../image/5.jpg" alt="5"> <img src="../image/1.jpg" alt="1"> </div> <div id="buttons"> <span class="on"></span> <span></span> <span></span> <span></span> <span></span> </div> <a href="javascript:;" id="prev" class="arrow"><</a> <a href="javascript:;" id="next" class="arrow">></a> </div>
js:
window.onload = function(){ //获取元素 var container = document.getElementById('container'); var list = this.document.getElementById('list'); var buttons = document.getElementById('buttons').getElementsByTagName('span'); var prev = document.getElementById('prev'); var next = document.getElementById('next'); var index = 1;//默认第一个小圆点亮 //小圆点的点亮 function showButton() { //遍历小圆点的个数,当触发onclick事件后,className为‘on'的变为‘'。 for(var i = 0;i < buttons.length; i++){ if(buttons[i].className == 'on'){ buttons[i].className = ''; break; } } buttons[index - 1].className = 'on'; //原始第一个小圆点点亮,onclick事件触发后,index+1 } function animate (offset) { //获取从第一张图片开始发生的偏移量 var newLift = parseInt(list.style.left) + offset; list.style.left = newLift + 'px'; if(newLift > -600){ //如果偏移量的位置大于-600的时候,图片跳转到第五张图片 list.style.left = -3000 + 'px'; } if(newLift < -3000){ //如果偏移量的位置大于-3000的时候,图片跳转到第一张图片 list.style.left = -600 + 'px'; } } next.onclick = function () { //如果button的index为5的时候,再点击next按钮会返回 1; if(index == 5){ index = 1; }else{ index += 1; } showButton(); animate(-600); } prev.onclick = function () { if(index == 1){ index = 5; }else{ index -= 1; } showButton(); animate(600); } }
更多关于轮播图效果的专题,请点击下方链接查看学习
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持狼蚁SEO。
编程语言
- 宿迁百度关键词排名指南:实现精准营销的关键
- 四川SEO优化怎么做网络推广
- 立昂技术备案老域名收购:如何为您的业务赋能
- 安徽百度关键词seo贵不贵,一般需要多少钱
- 吉林百度快照排名怎么做电话营销
- 多伦新手做SEO怎么做
- 甘肃优化关键词排名推广怎么做论坛营销
- 沙雅SEO网站推广:提升您的在线可见性
- 四川SEO优化如何提升销售额和销售量
- 聂荣网站排名优化:提升网站可见性的全方位指
- 涞水SEO:提升地方企业在线可见性的策略
- 辽宁百度seo排名怎样做网站排名
- 临湘哪有关键词排名优化:提升网站可见度的关
- 黑龙江百度网站优化有没有优惠
- 凉城优化关键词排名推广:提升您的网络可见性
- 萝北整站优化:提升您网站流量和排名的全面指