jQuery焦点图轮播效果实现方法


Posted in Javascript onDecember 19, 2016

本文实例讲述了jQuery焦点图轮播效果实现方法。分享给大家供大家参考,具体如下:

前面一篇《JS实现焦点图轮播效果的方法详解》详细介绍了JS实现焦点图轮播效果的步骤,这里来分析一下jQuery的相关实现技巧。

核心代码如下:

$(function(){
  var $next=$(".right");
  var $prev=$(".left");
  var $list_num=$(".list-num a");
  var $banner=$(".banner");
  var $list_banner=$(".list-banner");
  var index=1;
  var timer;
  var $list_img_f=$(".list-banner li:first");
  var $list_img_l=$(".list-banner li:last");
  $list_img_f.clone(true).appendTo($list_banner);
  $list_img_l.clone(true).prependTo($list_banner);
  function showDot($obj){
    $obj.addClass("hover").siblings().removeClass("hover");
  }
  function startMove(i){
    $list_banner.stop().animate({left:-i*624},300,function(){
      if(i<1){
        showDot($list_num.eq(3));
      }
      else if(i>4){
        showDot($list_num.eq(0));
      }
      else{
        showDot($list_num.eq(i-1));
      }
      if(i<1){
        $list_banner.css("left",-2496);
        index=4;
      }
      else if(i>4){
        $list_banner.css("left",-624);
        index=1;
      }
    });
  }
  function autoPlay(){
    timer=setInterval(function(){
      $next.click();
    },2000);
  }
  autoPlay();
  $next.click(function(){
    if(!$list_banner.is(":animated")){ //如果先index++再执行startMove(index);会有点问题,点的快某个点会跳过
      startMove(++index);
    }
  });
  $prev.click(function(){
    if(!$list_banner.is(":animated")){
      startMove(--index);
    }
  });
  $list_num.click(function(){
    var i=$(this).index()+1;
    index=i;
    startMove(i);
  });
});

和js的区别:用.animate()方法代替js里要算的速度,每次滑行距离以及定时器setTimeout

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

Javascript 相关文章推荐
基于jsTree的无限级树JSON数据的转换代码
Jul 27 Javascript
js innerHTML 改变div内容的方法
Aug 03 Javascript
php和js对数据库图片进行等比缩放示例
Apr 28 Javascript
jQuery中focus事件用法实例
Dec 26 Javascript
jQuery源码分析之Callbacks详解
Mar 13 Javascript
php常见的页面跳转方法汇总
Apr 15 Javascript
js实现网页的两个input标签内的数值加减(示例代码)
Aug 15 Javascript
AngularJS与BootStrap模仿百度分页的示例代码
May 23 Javascript
js动态设置select下拉菜单的默认选中项实例
Aug 21 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
详解React服务端渲染从入门到精通
Mar 28 Javascript
Vue3新特性之在Composition API中使用CSS Modules
Jul 13 Javascript
JS实现焦点图轮播效果的方法详解
Dec 19 #Javascript
jQuery拖拽通过八个点改变div大小
Nov 29 #Javascript
jQuery网页定位导航特效实现方法
Dec 19 #Javascript
关于微信上网页图片点击全屏放大效果
Dec 19 #Javascript
详解jQuery lazyload 懒加载
Dec 19 #Javascript
JS实现滑动门效果的方法详解
Dec 19 #Javascript
jQuery纵向导航菜单效果实现方法
Dec 19 #Javascript
You might like
PHP @ at 记号的作用示例介绍
2014/10/10 PHP
PHP中使用Imagick操作PSD文件实例
2015/01/26 PHP
Yii框架结合sphinx,Ajax实现搜索分页功能示例
2016/10/18 PHP
Laravel ORM 数据model操作教程
2019/10/21 PHP
XML的代替者----JSON
2007/07/21 Javascript
JavaScript实现俄罗斯方块游戏过程分析及源码分享
2015/03/23 Javascript
使用JavaScript脚本无法直接改变Asp.net中Checkbox控件的Enable属性的解决方法
2015/09/16 Javascript
基于jQuery实现发送短信验证码后的倒计时功能(无视页面关闭)
2016/09/02 Javascript
AngularJS实现单独作用域内的数据操作
2016/09/05 Javascript
jquery ajax后台返回list,前台用jquery遍历list的实现
2016/10/30 Javascript
AngularJS中update两次出现$promise属性无法识别的解决方法
2017/01/05 Javascript
JS身份证信息验证正则表达式
2017/06/12 Javascript
DVA框架统一处理所有页面的loading状态
2017/08/25 Javascript
JavaScript 链表定义与使用方法示例
2020/04/28 Javascript
使用eslint和githooks统一前端风格的技巧
2020/07/29 Javascript
记录一次websocket封装的过程
2020/11/23 Javascript
Python中的特殊语法:filter、map、reduce、lambda介绍
2015/04/14 Python
Python的math模块中的常用数学函数整理
2016/02/04 Python
python实现指定文件夹下的指定文件移动到指定位置
2018/09/17 Python
python+mysql实现学生信息查询系统
2019/02/21 Python
详解Python3 pandas.merge用法
2019/09/05 Python
Django后端发送小程序微信模板消息示例(服务通知)
2019/12/17 Python
Python面向对象封装操作案例详解
2019/12/31 Python
Django choices下拉列表绑定实例
2020/03/13 Python
Python内建序列通用操作6种实现方法
2020/03/26 Python
基于Python测试程序是否有错误
2020/05/16 Python
AmazeUI在模态框中嵌入表单形成模态输入框
2020/08/20 HTML / CSS
Funko官方商店:源自美国,畅销全球搪胶收藏玩偶
2018/09/15 全球购物
俄罗斯皮肤健康中心:Pharmacosmetica.ru
2020/02/22 全球购物
大一新生军训时的自我评价分享
2013/12/05 职场文书
小学毕业演讲稿
2014/04/25 职场文书
家长会演讲稿
2014/04/26 职场文书
银行领导班子四风对照检查材料
2014/09/27 职场文书
学校查摆问题整改措施
2014/09/28 职场文书
首都博物馆观后感
2015/06/05 职场文书
Redis Cluster 集群搭建你会吗
2021/08/04 Redis