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 相关文章推荐
JQ获取动态加载的图片大小的正确方法分享
Nov 08 Javascript
jquery 漂亮的删除确认和提交无刷新删除示例
Nov 13 Javascript
jquery实现点击弹出层效果的简单实例
Mar 03 Javascript
JavaScript中window.showModalDialog()用法详解
Dec 18 Javascript
JS+CSS实现经典的左侧竖向滑动菜单效果
Sep 23 Javascript
浅谈Javascript中Object与Function对象
Sep 26 Javascript
jQuery基于Ajax方式提交表单功能示例
Feb 10 Javascript
AngularJS双向绑定和依赖反转实例详解
Apr 15 Javascript
JS鼠标3次点击事件实现代码及扩展思路
Sep 12 Javascript
浅谈VUE单页应用首屏加载速度优化方案
Aug 28 Javascript
JavaScript 反射和属性赋值实例解析
Oct 28 Javascript
微信小程序实现左滑删除效果
Nov 18 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
CodeIgniter常用知识点小结
2016/05/26 PHP
PHP中number_format()函数的用法讲解
2019/04/08 PHP
Js 本页面传值实现代码
2009/05/17 Javascript
IE iframe的onload方法分析小结
2010/01/07 Javascript
DOM 中的事件处理介绍
2012/01/18 Javascript
jQuery登陆判断简单实现代码
2013/04/21 Javascript
如何使用Javascript正则表达式来格式化XML内容
2013/07/04 Javascript
Js放到HTML文件中的哪个位置有什么区别
2013/08/21 Javascript
AspNet中使用JQuery上传插件Uploadify详解
2015/05/20 Javascript
Javascript基于对象三大特性(封装性、继承性、多态性)
2016/01/04 Javascript
JavaScript中的 attribute 和 jQuery中的 attr 方法浅析
2017/01/04 Javascript
浅谈js中同名函数和同名变量的执行问题
2017/02/12 Javascript
通过命令行生成vue项目框架的方法
2017/07/12 Javascript
nodejs项目windows下开机自启动的方法
2017/11/22 NodeJs
基于JavaScript实现抽奖系统
2018/01/16 Javascript
微信小程序的部署方法步骤
2018/09/04 Javascript
jQuery实现的模仿雨滴下落动画效果
2018/12/11 jQuery
vue ssr 实现方式(学习笔记)
2019/01/18 Javascript
Vue基础学习之项目整合及优化
2019/06/02 Javascript
解决vue项目刷新后,导航菜单高亮显示的位置不对问题
2019/11/01 Javascript
javascript中可能用得到的全部的排序算法
2020/03/05 Javascript
深入分析jQuery.one() 函数
2020/06/03 jQuery
Vue初始化中的选项合并之initInternalComponent详解
2020/06/11 Javascript
PHP webshell检查工具 python实现代码
2009/09/15 Python
Python黑魔法Descriptor描述符的实例解析
2016/06/02 Python
python删除服务器文件代码示例
2018/02/09 Python
python3.6中anaconda安装sklearn踩坑实录
2020/07/28 Python
如何利用CSS3制作3D效果文字具体实现样式
2013/05/02 HTML / CSS
canvas烟花特效锦集
2018/01/17 HTML / CSS
FLOS美国官网:意大利高级照明工艺的传奇
2018/08/07 全球购物
运动会广播稿100字
2014/09/14 职场文书
中小企业员工手册范本
2015/05/14 职场文书
2019年农民幸福观调查的实践感悟
2019/12/19 职场文书
PHP中多字节字符串操作实例详解
2021/08/23 PHP
Python正则表达式中flags参数的实例详解
2022/04/01 Python
在Oracle表中进行关键词搜索的过程
2022/06/10 Oracle