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 相关文章推荐
Javascript模块化编程(三)require.js的用法及功能介绍
Jan 17 Javascript
JQuery结合CSS操作打印样式的方法
Dec 24 Javascript
javascript设计模式之工厂模式示例讲解
Mar 04 Javascript
jQuery版本升级踩坑大全
Jan 12 Javascript
Javascript中内建函数reduce的应用详解
Oct 20 Javascript
JS对象是否拥有某属性如何判断
Feb 03 Javascript
JavaScript组件开发之输入框加候选框
Mar 10 Javascript
JavaScript Drum Kit 指南(纯 JS 模拟敲鼓效果)
Jul 23 Javascript
基于node.js之调试器详解
Aug 22 Javascript
vue 实现axios拦截、页面跳转和token 验证
Jul 17 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
Nov 06 Javascript
vue项目打包之后背景样式丢失的解决方案
Jan 17 Javascript
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
PHP生成静态页面详解
2006/11/19 PHP
PHP人民币金额数字转中文大写的函数代码
2013/02/27 PHP
PHP字符串的连接的简单实例
2013/12/30 PHP
php curl_init函数用法
2014/01/31 PHP
PHP strip_tags()去除HTML、XML以及PHP的标签介绍
2014/02/18 PHP
php数组中包含中文的排序方法
2014/06/03 PHP
javascript数字数组去重复项的实现代码
2010/12/30 Javascript
jquery文字上下滚动的实现方法
2013/03/22 Javascript
关闭浏览器窗口弹出提示框并且可以控制其失效
2014/04/15 Javascript
jQuery实现360°全景拖动展示
2015/03/18 Javascript
手机开发必备技巧:javascript及CSS功能代码分享
2015/05/25 Javascript
JavaScript 数组some()和filter()的用法及区别
2016/05/20 Javascript
jQuery实现弹出带遮罩层的居中浮动窗口效果
2016/09/12 Javascript
js获取浏览器高度 窗口高度 元素尺寸 偏移属性的方法
2016/11/21 Javascript
浅谈JavaScript异步编程
2017/01/20 Javascript
vue中动态绑定表单元素的属性方法
2018/02/23 Javascript
原生JS封装_new函数实现new关键字的功能
2018/08/12 Javascript
vue打包相关细节整理(小结)
2018/09/28 Javascript
详解VUE里子组件如何获取父组件动态变化的值
2018/12/26 Javascript
vue中利用simplemde实现markdown编辑器(增加图片上传功能)
2019/04/29 Javascript
Vue 实现html中根据类型显示内容
2019/10/28 Javascript
Python 过滤字符串的技巧,map与itertools.imap
2008/09/06 Python
python 第三方库的安装及pip的使用详解
2017/05/11 Python
Python中使用支持向量机(SVM)算法
2017/12/26 Python
python实现闹钟定时播放音乐功能
2018/01/25 Python
python进阶之多线程对同一个全局变量的处理方法
2018/11/09 Python
Python3模拟登录操作实例分析
2019/03/12 Python
python基于itchat模块实现微信防撤回
2019/04/29 Python
python自动识别文本编码格式代码
2019/12/26 Python
6行Python代码实现进度条效果(Progress、tqdm、alive-progress​​​​​​​和PySimpleGUI库)
2020/01/06 Python
让你相见恨晚的十个Python骚操作
2020/11/18 Python
html5中svg canvas和图片之间相互转化思路代码
2014/01/24 HTML / CSS
医院领导班子四风对照检查材料
2014/09/27 职场文书
2014年食堂工作总结
2014/11/20 职场文书
门面租赁合同范文
2019/08/06 职场文书
Spring boot应用启动后首次访问很慢的解决方案
2021/06/23 Java/Android