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 相关文章推荐
javascript 字符串连接的性能问题(多浏览器)
Nov 18 Javascript
如何使用jquery动态加载js,css文件实现代码
Apr 03 Javascript
Jquery图片延迟加载插件jquery.lazyload.js的使用方法
May 21 Javascript
javascript 面向对象封装与继承
Nov 27 Javascript
Node.js重新刷新session过期时间的方法
Feb 04 Javascript
JavaScript事件学习小结(五)js中事件类型之鼠标事件
Jun 09 Javascript
AngularJS 模块详解及简单实例
Jul 28 Javascript
Vue如何实现组件的源码解析
Jun 08 Javascript
微信小程序 配置顶部导航条标题颜色的实现方法
Sep 20 Javascript
Vue中v-for的数据分组实例
Mar 07 Javascript
Vue中保存数据到磁盘文件的方法
Sep 06 Javascript
微信小程序自定义头部导航栏(组件化)
Nov 15 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模拟socket一次连接,多次发送数据的实现代码
2011/07/26 PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
2014/04/24 PHP
Ubuntu VPS中wordpress网站打开时提示”建立数据库连接错误”的解决办法
2016/11/03 PHP
PHP的CURL方法curl_setopt()函数案例介绍(抓取网页,POST数据)
2016/12/14 PHP
PHP+mysql实现从数据库获取下拉树功能示例
2017/01/06 PHP
php处理多图上传压缩代码功能
2018/06/13 PHP
js 获取子节点函数 (兼容FF与IE)
2010/04/18 Javascript
jQuery实现折叠、展开的菜单组效果代码
2015/09/16 Javascript
JavaScript事件类型中焦点、鼠标和滚轮事件详解
2016/01/25 Javascript
详解javascript new的运行机制
2016/01/26 Javascript
JavaScript常用代码书写规范的超全面总结
2016/09/11 Javascript
EasyUI Combobox设置默认值 获取text的方法
2016/11/28 Javascript
JavaScript之Vue.js【入门基础】
2016/12/06 Javascript
JQuery异步提交表单与文件上传功能示例
2017/01/12 Javascript
详解vue-router 2.0 常用基础知识点之router-link
2017/05/10 Javascript
npm国内镜像 安装失败的几种解决方案
2017/06/04 Javascript
angular实现图片懒加载实例代码
2017/06/08 Javascript
基于vue-cli vue-router搭建底部导航栏移动前端项目
2018/02/28 Javascript
js中split()方法得到的数组长度问题
2018/07/19 Javascript
JS简单判断是否在微信浏览器打开的方法示例
2019/01/08 Javascript
JavaScript惰性求值的一种实现方法示例
2019/01/11 Javascript
JavaScript类型相关的常用操作总结
2019/02/14 Javascript
node.js使用yargs处理命令行参数操作示例
2020/02/11 Javascript
webpack.DefinePlugin与cross-env区别详解
2020/02/23 Javascript
Vue element-ui父组件控制子组件的表单校验操作
2020/07/17 Javascript
[27:02]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS LGD第三场
2014/05/24 DOTA
对python-3-print重定向输出的几种方法总结
2018/05/11 Python
详解Python如何生成词云的方法
2018/06/01 Python
远程部署工具Fabric详解(支持Python3)
2019/07/04 Python
python模拟实现分发扑克牌
2020/04/22 Python
暇步士官网:Hush Puppies
2016/09/22 全球购物
英国比较机场停车场网站:Airport Parking Essentials
2019/12/01 全球购物
2015年国庆节寄语
2015/08/17 职场文书
windows11怎么查看wifi密码? win11查看wifi密码的技巧
2021/11/21 数码科技
Python Matplotlib绘制等高线图与渐变色扇形图
2022/04/14 Python
JS前端使用canvas实现物体的点选示例
2022/08/05 Javascript