JQuery分屏指示器图片轮换效果实例


Posted in Javascript onMay 21, 2015

本文实例讲述了JQuery分屏指示器图片轮换效果实现方法。分享给大家供大家参考。具体分析如下:

在Web App大行其道的今天,分屏指示器用得非常广泛,从Android、到腾讯的Web OS等等。分屏指示器给人很好的用户体验,下面就实现一个分屏指示器,用于实现图片的简单轮换效果,仅抛砖引玉~

代码如下:

<script type="text/javascript">
   var curr = 0, next = 0, count = 0;
   $(document).ready(function () {
     // 记录图片的数量 
     count = $('#img_list a').size();
     t = setInterval('imgPlay()', 3000);
     // 鼠标移动到图片或导航上停止播放,移开后恢复播放 
     $('#imgs li, #img_list a').hover(function () {
       clearInterval(t);
     }, function () {
       t = setInterval('imgPlay()', 3000);
     });
     //点击导航播放到相应的图片 
     $('#img_list a').click(function () {
       // index()函数返回当前导航的下标
       var index = $('#img_list a').index(this);
       if (curr != index) {
         play(index);
         curr = index;
       };
       return false;
     });
   });
   // 播放图片的函数
   var imgPlay = function () {
     next = curr + 1;
     // 若当前图片播放到最后一张,这设置下一张要播放的图片为第一张图片的下标
     if (curr == count - 1) next = 0;
     play(next);
     curr++;
     // 在当前图片的下标加1后,若值大于最后一张图片的下标,则设置下一轮其实播放的图片下标为第一张图片的下标,而next永远比curr大1
     if (curr > count - 1) { curr = 0; next = curr + 1; }
   };
   // 控制播放效果的函数
   var play = function (next) {
     // 当前的图片滑到左边-500px,完成后返回到右边490px
     // 下一张图片滑到0px处,完成后导航的焦点切换到下一个点上
     $('#imgs li').eq(curr).css({ 'opacity': '0.5' }).animate({ 'left': '-530px', 'opacity': '1' }, 'slow', function () {
       $(this).css({ 'left': '520px' });
     }).end()
.eq(next).animate({ 'left': '0px', 'opacity': '1' }, 'slow', function () {
  $('#img_list a').siblings('a').removeClass('active').end().eq(next).addClass('active');
});
   };
 </script>

希望本文所述对大家的jQuery程序设计有所帮助。

Javascript 相关文章推荐
javascript中[]和{}对象使用介绍
Mar 20 Javascript
javascript四舍五入函数代码分享(保留后几位)
Dec 10 Javascript
ie7+背景透明文字不透明超级简单的实现方法
Jan 17 Javascript
jquery弹窗插件colorbox绑定动态生成元素的方法
Jun 20 Javascript
JavaScript中实现PHP的打乱数组函数shuffle实例
Oct 11 Javascript
js获取当前日期前七天的方法
Feb 28 Javascript
JS实现网页表格自动变大缩小的方法
Mar 09 Javascript
js+css实现超简洁的二级下拉菜单效果代码
Sep 07 Javascript
Node.js 8 中的 util.promisify的详解
Jun 12 Javascript
JavaScript注册时密码强度校验代码
Jun 30 Javascript
Vue+Vux项目实践完整代码
Nov 30 Javascript
微信小程序页面滚动到指定位置代码实例
Sep 07 Javascript
jQuery聚合函数实例
May 21 #Javascript
js获取页面description的方法
May 21 #Javascript
js同源策略详解
May 21 #Javascript
js设置document.domain实现跨域的注意点分析
May 21 #Javascript
jQuery+ajax实现无刷新级联菜单示例
May 21 #Javascript
jQuery插件expander实现图片翻转特效
May 21 #Javascript
简单分析javascript面向对象与原型
May 21 #Javascript
You might like
解析如何屏蔽php中的phpinfo()函数
2013/06/06 PHP
简单介绍PHP非阻塞模式
2016/03/03 PHP
PHP弱类型语言中类型判断操作实例详解
2017/08/10 PHP
laravel学习笔记之模型事件的几种用法示例
2017/08/15 PHP
js模拟弹出效果代码修正版
2008/08/07 Javascript
JavaScript读取中文cookie时的乱码问题的解决方法
2009/10/14 Javascript
什么是DOM(Document Object Model)文档对象模型
2012/03/05 Javascript
document.forms[].submit()使用介绍
2014/02/19 Javascript
页面js遇到乱码问题的解决方法是和无法转码的情况
2014/04/30 Javascript
jquery easyui使用心得
2014/07/07 Javascript
实例代码详解javascript实现窗口抖动及qq窗口抖动
2016/01/04 Javascript
vue、react等单页面项目应该这样子部署到服务器
2018/01/03 Javascript
javascript将非数值转换为数值
2018/09/13 Javascript
vue动态删除从数据库倒入列表的某一条方法
2018/09/29 Javascript
解决Vue在封装了Axios后手动刷新页面拦截器无效的问题
2018/11/08 Javascript
如何通过shell脚本自动生成vue文件详解
2019/09/10 Javascript
手把手带你入门微信小程序新框架Kbone的使用
2020/02/25 Javascript
vue-cli4.0多环境配置变量与模式详解
2020/12/30 Vue.js
[05:10]2014DOTA2国际邀请赛 通往胜利之匙赛场探秘之旅
2014/07/18 DOTA
Python中关键字is与==的区别简述
2014/07/31 Python
浅析Python中的多进程与多线程的使用
2015/04/07 Python
Python实现快速排序和插入排序算法及自定义排序的示例
2016/02/16 Python
详解Python3中字符串中的数字提取方法
2017/01/14 Python
python线程池(threadpool)模块使用笔记详解
2017/11/17 Python
Python MongoDB 插入数据时已存在则不执行,不存在则插入的解决方法
2019/09/24 Python
python实现监控阿里云账户余额功能
2019/12/16 Python
python matplotlib库的基本使用
2020/09/23 Python
python爬虫---requests库的用法详解
2020/09/28 Python
Django限制API访问频率常用方法解析
2020/10/12 Python
飞利浦法国官网:Philips法国
2019/07/10 全球购物
纪念建党演讲稿范文
2014/01/13 职场文书
军训 自我鉴定
2014/02/03 职场文书
函授自我鉴定范文
2014/02/06 职场文书
卫生院艾滋病宣传活动总结
2015/05/09 职场文书
立案决定书范文
2015/06/24 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书