jquery实现轮播图效果


Posted in Javascript onFebruary 13, 2017

效果如下:

jquery实现轮播图效果

代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>slider</title>
 <style type="text/css">
 *{
 margin: 0;
 padding: 0;
 }
 #slideshow{
 position: relative;
 width: 512px;
 height: 384px;
 margin: 0 auto;
 overflow: hidden;
 }
 #slideshow>ul,#slideshow>ul>li,#slideshow-nav{
 position: absolute;
 }
 #slideshow>ul>li{
 list-style: none;
 }
 #slideshow-nav{
 bottom: 20px;
 width: 100%;
 text-align: center;
 }
 #slideshow-nav>span{
 display: inline-block;
 width: 15px;
 height: 15px;
 margin: 0 7px;
 font-size: 0;
 background-color: rgba(255,255,255,.3);
 border-radius: 50%;
 user-select: none;
 -webkit-user-select: none;
 transition: all .5s;
 -webkit-transition: all .5s;
 cursor: pointer;
 }
 #slideshow-nav>span.active{
 background-color: #fff;
 }
 </style>
</head>
<body>
 <div id="slideshow">
 <ul>
 <li><img src="http://cdn.attach.qdfuns.com/notes/pics/201611/26/231154e8ab2zanwd59a2w2.jpg" alt="gakki is mine"></li>
 <li><img src="http://cdn.attach.qdfuns.com/notes/pics/201611/26/231236ugj2glgcl6g66gg4.jpg" alt="gakki is mine"></li>
 <li><img src="http://cdn.attach.qdfuns.com/notes/pics/201611/26/231236c26bx5bbfp6kazzm.jpg" alt="gakki is mine"></li>
 <li><img src="http://cdn.attach.qdfuns.com/notes/pics/201611/26/231236oqd8i8q158ojr0i7.jpg" alt="gakki is mine"></li>
 <li><img src="http://cdn.attach.qdfuns.com/notes/pics/201611/26/231236o1iud19lkz11wqja.jpg" alt="gakki is mine"></li>
 </ul>
 <div id="slideshow-nav"></div>
 </div>
 <script src="http://cdn.bootcss.com/jquery/3.1.1/jquery.min.js"></script>
 <script type="text/javascript">
 $(function(){
 var timer = null,
 curindex = 0,
 duration = 2000,
 speed = 500;
 var $imgWrap = $('#slideshow>ul');
 var totalIndex = $imgWrap.find('li').length;
 var width = $('#slideshow').width();
 //insert navigate span, let img in order
 $('#slideshow').find('ul>li').each(function(index){
 $(this).css('left', width*index + 'px');
 $('#slideshow-nav').append('<span>' + (index+1) + '</span>');
 })
 //
 $('#slideshow-nav>span').eq(0).addClass('active');
 //auto slide
 var move = function(){
 curindex += 1;
 if (curindex===totalIndex) {
 curindex = 0;
 }
 // current span add classname "active"
 $('#slideshow-nav>span').each(function(index) {
 $(this).removeClass('active')
 }).eq(curindex).addClass('active');
 //auto slide
 $imgWrap.animate({
 'left': width*curindex*(-1)+'px',
 }, speed)
 //一开始没加"timer = ",这个bug耽误了不少时间
 timer = setTimeout(move,duration+speed);
 };
 //init
 timer = setTimeout(move,duration);
 //click event
 $('#slideshow-nav>span').on('click', function(event) {
 event.preventDefault();
 /* Act on the event */
 clearTimeout(timer);
 $imgWrap.stop(true, true);
 curindex = $(this).index() - 1;
 move();
 });
 })
 </script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
jQueryPad 实用的jQuery测试工具(支持IE,chrome,FF)
May 22 Javascript
基于zepto的移动端轻量级日期插件--date_picker
Mar 04 Javascript
jQuery 限制输入字符串长度
Jun 20 Javascript
利用JavaScript阻止表单提交的两种方法
Aug 11 Javascript
再谈Javascript中的异步以及如何异步
Aug 19 Javascript
一个Js文件函数中调用另一个Js文件函数的方法演示
Aug 14 Javascript
vue-cli与webpack处理静态资源的方法及webpack打包的坑
May 15 Javascript
使用vue的transition完成滑动过渡的示例代码
Jun 25 Javascript
微信小程序自定义组件之可清除的input组件
Jul 17 Javascript
vue-router的两种模式的区别
May 30 Javascript
vue 实现在同一界面实现组件的动态添加和删除功能
Jun 16 Javascript
梳理一下vue中的生命周期
Dec 30 Vue.js
JS中解决谷歌浏览器记住密码输入框颜色改变功能
Feb 13 #Javascript
利用Javascript实现简单的转盘抽奖
Feb 13 #Javascript
简单实现js倒计时功能
Feb 13 #Javascript
基于node.js依赖express解析post请求四种数据格式
Feb 13 #Javascript
js中小数向上取整数,向下取整数,四舍五入取整数的实现(必看篇)
Feb 13 #Javascript
Angularjs自定义指令实现三级联动 选择地理位置
Feb 13 #Javascript
基于jQuery代码实现圆形菜单展开收缩效果
Feb 13 #Javascript
You might like
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
PHP 引用是个坏习惯
2010/03/12 PHP
php实现高效获取图片尺寸的方法
2014/12/12 PHP
php中smarty实现多模版网站的方法
2015/06/11 PHP
详细解读PHP中接口的应用
2015/08/12 PHP
PHP控制前台弹出对话框的实现方法
2016/08/21 PHP
js资料prototype 属性
2007/03/13 Javascript
可以用来调试JavaScript错误的解决方案
2010/08/07 Javascript
angular实现图片懒加载实例代码
2017/06/08 Javascript
js隐式转换的知识实例讲解
2018/09/28 Javascript
jqGrid表格底部汇总、合计行footerrow处理
2019/08/21 Javascript
微信小程序 子级页面返回父级并把子级参数带回父级实现方法
2019/08/22 Javascript
vue实现把接口单独存放在一个文件方式
2020/08/13 Javascript
python创建和使用字典实例详解
2013/11/01 Python
python函数返回多个值的示例方法
2013/12/04 Python
python网络爬虫采集联想词示例
2014/02/11 Python
学习python 之编写简单乘法运算题
2016/02/27 Python
windows上安装Anaconda和python的教程详解
2017/03/28 Python
python 接收处理外带的参数方法
2018/12/03 Python
详解python解压压缩包的五种方法
2019/07/05 Python
在Django admin中编辑ManyToManyField的实现方法
2019/08/09 Python
python多线程实现代码(模拟银行服务操作流程)
2020/01/13 Python
python orm 框架中sqlalchemy用法实例详解
2020/02/02 Python
使用OpenCV去除面积较小的连通域
2020/07/05 Python
Python接收手机短信的代码整理
2020/08/02 Python
英国健身超市:Fitness Superstore
2019/06/17 全球购物
Deichmann英国:德国鞋类零售商
2021/01/30 全球购物
应届大专毕业生个人自荐信
2013/09/22 职场文书
体育之星事迹材料
2014/05/11 职场文书
校庆团日活动总结
2014/08/28 职场文书
投标承诺函格式
2015/01/21 职场文书
公路施工安全责任书
2015/05/08 职场文书
小平您好观后感
2015/06/09 职场文书
百善孝为先:关于孝道的经典语录
2019/10/18 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis
英国数字版游戏销量周榜公布 《小缇娜的奇幻之地》登顶
2022/04/03 其他游戏