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 相关文章推荐
基于jQuery的实现简单的分页控件
Oct 10 Javascript
如何使用JS获取IE上传文件路径(IE7,8)
Jul 08 Javascript
JQuery 文本框回车跳到下一个文本框示例代码
Aug 30 Javascript
JavaScript输入邮箱自动提示实例代码
Jan 13 Javascript
JavaScript实现简单图片滚动附源码下载
Jun 17 Javascript
一道常被人轻视的web前端常见面试题(JS)
Feb 15 Javascript
JS Canvas定时器模拟动态加载动画
Sep 17 Javascript
jQuery中 bind的用法简单介绍
Feb 13 Javascript
原生javascript实现的全屏滚动功能示例
Sep 19 Javascript
5分钟学会Vue动画效果(小结)
Jul 21 Javascript
js模拟F11页面全屏显示
Sep 17 Javascript
vue用ant design中table表格,点击某行时触发的事件操作
Oct 28 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中的字符串函数
2006/10/09 PHP
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
PHP下10件你也许并不了解的事情
2008/09/11 PHP
php 模拟GMAIL,HOTMAIL(MSN),YAHOO,163,126邮箱登录的详细介绍
2013/06/18 PHP
PHP多线程类及用法实例
2014/12/03 PHP
PHP与服务器文件系统的简单交互
2016/10/21 PHP
php mysql操作mysql_connect连接数据库实例详解
2016/12/26 PHP
Yii2.0框架behaviors方法使用实例分析
2019/09/30 PHP
JavaScript Array扩展实现代码
2009/10/14 Javascript
js获取html参数及向swf传递参数应用介绍
2013/02/18 Javascript
javascript轻松实现当鼠标移开时已弹出子菜单自动消失
2013/12/29 Javascript
用js替换除数字与逗号以外的所有字符的代码
2014/06/07 Javascript
jQuery提示效果代码分享
2014/11/20 Javascript
JavaScript中的alert()函数使用技巧详解
2014/12/29 Javascript
JavaScript 学习笔记之语句
2015/01/14 Javascript
jQuery 翻页组件yunm.pager.js实现div局部刷新的思路
2016/08/11 Javascript
JS获取及验证开始结束日期的方法
2016/08/20 Javascript
javascript中异常处理案例(推荐)
2016/10/03 Javascript
jQuery中弹出iframe内嵌页面元素到父页面并全屏化的实例代码
2016/12/27 Javascript
react-router4 嵌套路由的使用方法
2017/07/24 Javascript
详解ESLint在Vue中的使用小结
2018/10/15 Javascript
JS指定音频audio在某个时间点进行播放
2020/11/28 Javascript
[01:09]DOTA2次级职业联赛 - 99战队宣传片
2014/12/01 DOTA
[41:12]Liquid vs Secret 2019国际邀请赛淘汰赛 败者组 BO3 第一场 8.24
2019/09/10 DOTA
Numpy 将二维图像矩阵转换为一维向量的方法
2018/06/05 Python
python读取并定位excel数据坐标系详解
2019/06/26 Python
Python生成验证码、计算具体日期是一年中的第几天实例代码详解
2019/10/16 Python
python实现交并比IOU教程
2020/04/16 Python
python 8种必备的gui库
2020/08/27 Python
日本民宿预约平台:STAY JAPAN
2017/07/01 全球购物
圣彼得堡鲜花配送:Semicvetic
2020/09/15 全球购物
最新销售员个人自荐信
2013/09/21 职场文书
领导失职检讨书
2014/02/24 职场文书
经济职业学院毕业生自荐书
2014/03/17 职场文书
节能环保口号
2014/06/12 职场文书
求职自我推荐信
2014/06/25 职场文书