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 相关文章推荐
js Function类型
Dec 04 Javascript
jquery live()重复绑定的解决方法介绍
Jan 03 Javascript
jQuery中用dom操作替代正则表达式
Dec 29 Javascript
JSP基于Bootstrap分页显示实例解析
Jun 12 Javascript
vue 2.0封装model组件的方法
Aug 03 Javascript
vue中axios处理http发送请求的示例(Post和get)
Oct 13 Javascript
vue-scroller记录滚动位置的示例代码
Jan 17 Javascript
移动端图片上传旋转、压缩问题的方法
Oct 16 Javascript
JavaScript遍历DOM元素的常见方式示例
Feb 16 Javascript
vue实现拖拽的简单案例 不超出可视区域
Jul 25 Javascript
ligerUI的ligerDialog关闭刷新的方法
Sep 27 Javascript
three.js 如何制作魔方
Jul 31 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
数据库相关问题
2006/10/09 PHP
php三维数组去重(示例代码)
2013/11/26 PHP
smarty中js的调用方法示例
2014/10/27 PHP
Laravel使用scout集成elasticsearch做全文搜索的实现方法
2018/11/30 PHP
Windows平台PHP+IECapt实现网页批量截图并创建缩略图功能详解
2019/08/02 PHP
javascript prototype 原型链
2009/03/12 Javascript
JavaScript在IE和Firefox(火狐)的不兼容问题解决方法小结
2010/04/13 Javascript
基于PHP+Jquery制作的可编辑的表格的代码
2011/04/10 Javascript
Javascript 面向对象编程(一) 封装
2011/08/28 Javascript
代码获取历史上的今天发生的事
2014/04/11 Javascript
JavaScript 学习笔记之数据类型
2015/01/14 Javascript
解析如何利用iframe标签以及js制作时钟
2016/12/08 Javascript
基于jQuery实现弹幕APP
2017/02/10 Javascript
Vue 实现树形视图数据功能
2018/05/07 Javascript
JS使用JSON.parse(),JSON.stringify()实现对对象的深拷贝功能分析
2019/03/06 Javascript
浅谈vuex中store的命名空间
2019/11/08 Javascript
详细分析vue响应式原理
2020/06/22 Javascript
解决echarts 一条柱状图显示两个值,类似进度条的问题
2020/07/20 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
2020/09/09 Javascript
vue+swiper实现左右滑动的测试题功能
2020/10/30 Javascript
react+antd 递归实现树状目录操作
2020/11/02 Javascript
浅析JavaScript中的事件委托机制跟深浅拷贝
2021/01/20 Javascript
[01:01]青春无憾,一战成名——DOTA2全国高校联赛开启
2018/02/25 DOTA
python提取log文件内容并画出图表
2019/07/08 Python
Python读取分割压缩TXT文本文件实例
2020/02/14 Python
keras 回调函数Callbacks 断点ModelCheckpoint教程
2020/06/18 Python
HTML高亮关键字的实现代码
2018/10/22 HTML / CSS
李宁官方网店:中国运动品牌
2017/11/02 全球购物
澳大利亚儿童鞋在线:The Trybe
2019/07/16 全球购物
面包店的创业计划书范文
2014/01/16 职场文书
办公室主任主任岗位责任制
2014/02/11 职场文书
小组合作学习反思
2014/02/18 职场文书
真诚的求职信
2014/07/04 职场文书
2015年助理工程师工作总结
2015/04/03 职场文书
python 如何在list中找Topk的数值和索引
2021/05/20 Python
python中Pyqt5使用Qlabel标签播放视频
2022/04/22 Python