jQuery图片轮播–自动播放/点击左右/小按钮
- 6249
- jQuery
- 2
- super_dodo
- 2014/08/06
每次都是去把找图片轮播的插件。好多时候还要下载,下载还要积分。有时候下载下来还很长很长的代码,无从下手。最近参照整理简洁了一个版本。连左右的小图标和下方的小圆点都省略了。只是效果只有一个滚动的效果,向左向右循环滚动。下方的指定的小圆点也可以点击到指定的图片。另外页面加载的时候自动的滚动。
图片的宽度需要配置。图片的数目了小圆点的数目保持一致。效果图如下,直接上代码。效果图如下,代码如下。。点击进入效果展示下载地址
<!DOCTYPE HTML> <html lang="en-US"> <head> <meta charset="UTF-8"> <title>图片轮播--自动播放--点击左右--点击指定小按钮</title> <script type="text/javascript" src="js/jquery-1.7.2.js"></script> <style type="text/css"> *{margin: 0;padding: 0;text-decoration: none;} body,html{margin:0;padding:0;} img{margin:0;padding:0;} #imgBanner{width:800px;height: 600px;overflow: hidden;position: relative;margin:0 auto;} #imgList{width:8000px;height: 800px;overflow: hidden;position: absolute;z-index: 1;} #buttons{position: absolute;height: 10px;width: 800px;z-index: 2;bottom: 50px;left:300px;} #buttons span{cursor: pointer;float: left;border:1px solid #fff;width: 10px;height: 10px;border-radius: 10px;margin:10px;background-color: #ccc;} #buttons .on{background: orangered;} .arrow{cursor: pointer;display: none;line-height:40px;font-size:50px;padding:20px;font-weight:bold;text-align: center; background-color:#ccc;z-index: 3;position: absolute;top:200px;opacity: 0.5;} .arrow:hover{background-color: rgba(0,0,0,.7);} #imgBanner:hover .arrow{display: block;} #prev{left:20px;} #next{right:20px;} ul,li{list-style:none;float:left;} </style> <script type="text/javascript"> $(function(){ var imgIndex = 0; //默认第一个选择 var imgAuto; //自动播放 var imgTime = 3000; //自动播放 3秒 var imgLenth = parseInt($('#imgList li').length) - 1; //图片的个数从0开始编数 var imgWidth = 800; //单张图片的宽度 var imgLong = (imgLenth + 1 ) * imgWidth; //所有图片的宽度 imgAuto = setInterval(autoImg,imgTime); $('#imgBanner').hover(function(){ clearInterval(imgAuto); },function() { imgAuto = setInterval(autoImg,imgTime); }); //图片自动播放的方法 默认下一个的类似方法 function autoImg () { if(imgIndex == imgLenth){ //滚动到最大的时候 imgIndex = 0; //偏移量归0 }else{ imgIndex += 1; //偏移量增加1 } var newLeft = parseInt(0 - (imgIndex * imgWidth)); $('#imgList').css({'left':newLeft+'px'}); showBtn(imgIndex); //按钮 } //点击向前按钮 $('#prev').click(function(){ if(imgIndex == '0'){ //当偏移量为0的时候,点击前一个 imgIndex = imgLenth; //把偏移量设成最大的一个,实现循环 }else{ //偏移量为其他的时候,点击向前 imgIndex -= 1; //偏移量减少1 } showBtn(imgIndex); //按钮 showImg(imgWidth); //图片 }); //点击向后按钮 $('#next').click(function(){ if(imgIndex == imgLenth){ //当偏移量为最大的时候,点击下一个 imgIndex = 0; //把偏移量设成0,实现循环 }else{ //偏移量为其他的时候,点击下一个 imgIndex += 1; //偏移量增加1 } showBtn(imgIndex); //按钮 showImg(-imgWidth); //图片 }); //点击小圆点的时候 $('#buttons span').click(function(){ imgIndex = parseInt($(this).attr('index')); //得到当前是第几个小圆点 var newLeft = parseInt(0 - (imgIndex * imgWidth)); //计算出偏移量 $('#imgList').css({'left':newLeft+'px'}); //设置图片偏移量 showBtn(imgIndex); //设置小圆点亮起来 }); //图片滚动--点击左右箭头的时候 function showImg(offSet){ var curLeft = parseInt($("#imgList").css("left")); //获得当前的偏移量 var newLeft = curLeft + offSet; if(newLeft <= -imgLong ){ newLeft = 0; } //向右移动到最大偏移量的时候 if(newLeft > '0'){ newLeft = -imgLong; } //向左移动到最大偏移量的时候 $('#imgList').css({'left':newLeft+'px'}); } //按钮选中状态 function showBtn(imgIndex){ $('#buttons span').eq(imgIndex).addClass('on').siblings().removeClass('on'); } }); </script> </head> <body> <div id="imgBanner"> <ul id="imgList" style="left:0px;"> <li><a href="javascript:void(0);"><img src="demo_img/11.jpg" alt="" /></a></li> <li><a href="javascript:void(0);"><img src="demo_img/12.jpg" alt="" /></a></li> <li><a href="javascript:void(0);"><img src="demo_img/13.jpg" alt="" /></a></li> <li><a href="javascript:void(0);"><img src="demo_img/14.jpg" alt="" /></a></li> <li><a href="javascript:void(0);"><img src="demo_img/15.jpg" alt="" /></a></li> </ul> <div id="buttons"> <span index="0" class="on"></span> <span index="1"></span> <span index="2"></span> <span index="3"></span> <span index="4"></span> </div> <a href="javascript:void(0);" class="arrow" id="prev"><</a> <a href="javascript:void(0);" class="arrow" id="next">></a> </div> </body> </html>
The positive thinker sees the Invisible, feels the Intangible, and achieves the Impossible. 心态积极者能够看到别人无法看到的,感悟别人无法感悟的,完成他人无法完成的。
相关阅读
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
热门文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例
最新文章
- 通过Google API客户端访问Google Play帐户报告PHP库
- PHP执行文件的压缩和解压缩方法
- 消息中间件MQ与RabbitMQ面试题
- 如何搭建一个拖垮公司的技术架构?
- Yii2中ElasticSearch的使用示例