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学习资源站点
Aug 29 Javascript
jQuery实现图片放大预览实现原理及代码
Sep 12 Javascript
原生JS封装ajax 传json,str,excel文件上传提交表单(推荐)
Jun 21 Javascript
javascript 将共享属性迁移到原型中去的实现方法
Aug 31 Javascript
AngularJS指令与指令之间的交互功能示例
Dec 14 Javascript
vue实现添加标签demo示例代码
Jan 21 Javascript
jQuery滚动插件scrollable.js用法分析
May 25 jQuery
javascript自定义事件功能与用法实例分析
Nov 08 Javascript
基于Vue的延迟加载插件vue-view-lazy
May 21 Javascript
使用easyui从servlet传递json数据到前端页面的两种方法
Sep 05 Javascript
vue监听浏览器原生返回按钮,进行路由转跳操作
Sep 09 Javascript
js对象属性名驼峰式转下划线的实例代码
Sep 17 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生成缩略图填充白边(等比缩略图方案)
2013/12/25 PHP
php调用c接口无错版介绍
2014/03/11 PHP
PHP中使用php://input处理相同name值的表单数据
2015/02/03 PHP
php实现用手机关闭计算机(电脑)的方法
2015/04/22 PHP
php简单实现发送带附件的邮件
2015/06/10 PHP
Javascript常用运算符(Operators)-javascript基础教程
2007/12/14 Javascript
Iframe 自适应高度并实时监控高度变化的js代码
2009/10/30 Javascript
Javascript 类、命名空间、代码组织代码
2011/07/31 Javascript
node.js中的fs.fstat方法使用说明
2014/12/15 Javascript
ECMAScript中函数function类型
2015/06/03 Javascript
移动端JQ插件hammer使用详解
2015/07/03 Javascript
不能不知道的10个angularjs英文学习网站
2016/03/23 Javascript
基于touch.js手势库+zepto.js插件开发图片查看器(滑动、缩放、双击缩放)
2016/11/17 Javascript
利用JS实现文字的聚合动画效果
2017/01/22 Javascript
详解基于vue的服务端渲染框架NUXT
2018/06/20 Javascript
详解基于vue-cli3.0如何构建功能完善的前端架子
2018/10/09 Javascript
浅谈监听单选框radio改变事件(和layui中单选按钮改变事件)
2019/09/10 Javascript
python提示No module named images的解决方法
2014/09/29 Python
详解Python3中的Sequence type的使用
2015/08/01 Python
浅谈python中的实例方法、类方法和静态方法
2017/02/17 Python
python3设计模式之简单工厂模式
2017/10/17 Python
python判断计算机是否有网络连接的实例
2018/12/15 Python
Python3爬虫教程之利用Python实现发送天气预报邮件
2018/12/16 Python
django框架基于模板 生成 excel(xls) 文件操作示例
2019/06/19 Python
Python selenium 自动化脚本打包成一个exe文件(推荐)
2020/01/14 Python
Tensorflow tf.tile()的用法实例分析
2020/05/22 Python
远东集团网络工程师面试题
2014/10/20 面试题
Vector, ArrayList, HashTable, HashMap哪些是线程安全的,哪些不是
2015/10/12 面试题
计算机网络毕业生自荐信
2013/10/01 职场文书
企业演讲稿范文
2013/12/28 职场文书
医药销售求职信范文
2014/02/01 职场文书
四风个人对照检查材料思想汇报(办公室通用版)
2014/10/07 职场文书
师德培训心得体会2016
2016/01/09 职场文书
《圆明园的毁灭》教学反思
2016/02/16 职场文书
关于JS中的作用域中的问题思考分享
2022/04/06 Javascript
MySQL数据库 任意ip连接方法
2022/05/20 MySQL