完美JQuery图片切换效果的简单实现


Posted in Javascript onJuly 21, 2016

效果如下:

完美JQuery图片切换效果的简单实现

css:

body { font-family:"Microsoft Yahei"; }
body,ul,li,img,h3,dl,dd,dt,h1{margin:0px;padding:0px;list-style:none;}  
img{vertical-align: top;}
/***大图切换***/
.scroll_view{margin: 0px auto;overflow:hidden;position: relative;}
.photo_view li{position:absolute;width: 100%;}
.photo_view li em,.photo_view li h3{position: absolute;bottom: 0px;z-index: 1;height: 35px;line-height: 35px;width: 100%;left: 0px;}
.photo_view li em{z-index: 1;background:rgba(0,0,0,0.5);filter: progid:DXImageTransform.Microsoft.gradient( GradientType = 0,startColorstr = '#50000000',endColorstr = '#50000000');_background:#000;}
.photo_view li h3{z-index: 2;text-indent: 1em;font-weight: normal;}
.photo_view li h3 a{color:#fff;}
.photo_view li h3 a:hover{color:#f60;}
.small_photo{position: absolute;bottom: 40px;right: 10px;cursor: pointer;z-index: 4;}
.small_photo li {float: left;padding-right: 10px;}
.small_photo li img{width: 80px;height: 35px;border: solid 2px #ccc;border-radius: 2px;}
.small_photo li.active img{border: solid 2px #f60;}

html:

<!-- start:大图切换 -->
<div class="scroll_view">
  <ul class="photo_view">
    <li><img src="images/ad1.jpg" alt="" class="" /><em></em><h3><a href="javascript:void(0);">图片效果1</a></h3></li>
    <li><img src="images/ad2.jpg" alt="" class="" /><em></em><h3><a href="javascript:void(0);">图片效果2</a></h3></li>
    <li><img src="images/ad3.jpg" alt="" class="" /><em></em><h3><a href="javascript:void(0);">图片效果3</a></h3></li>
    <li><img src="images/ad4.jpg" alt="" class="" /><em></em><h3><a href="javascript:void(0);">图片效果4</a></h3></li>
  </ul>
  <ul class="small_photo"></ul>
</div>
<!-- End:大图切换 -->

js:

$.fn.extend({  
  imgScroll:function(options){    
    var def={phtot_parent:$(".scroll_view"),photo_view:$(".photo_view"),small_photo:$(".small_photo"),speed:800,isauto:true,width:800,height:349},
      opt=$.extend({},def,options),
      $photo_view=opt.photo_view,
      $small_photo=opt.small_photo,
      speed=opt.speed,
      isauto=opt.isauto,
      index=0,
      _length=$photo_view.find("li").length,
      strTime=null;
    opt.phtot_parent.css({width:opt.width,height:opt.height});
    $photo_view.find("li:not(:first)").hide()//.find("img").hide();
    $photo_view.find("li").each(function(i){
      $small_photo.append('<li><img src="'+$(this).find("img").attr("src")+'" alt="" class="" /></li>');
    })
    $small_photo.find("li:first").addClass("active");
    //小图鼠标动作
    $small_photo.find("li").bind("mouseenter",function(){  
      clearInterval(strTime);
      if(index!=$(this).index()){
        index=$(this).index();  
        animate(index)
      }
    }).bind("mouseleave",function(){      
      if(isauto){
        start();  
      }
    });
    //大图悬停动作
    $photo_view.find("li").bind("mouseenter",function(){  
      clearInterval(strTime);      
    }).bind("mouseleave",function(){      
      if(isauto){
        start();  
      }
    });
    //自动播放
    if(isauto){
      start();  
    }
    //启动自动播放
    function start(){
      strTime=setInterval(function(){
        index >= _length-1 ? index=0 : index++;
        animate(index);
      },speed);
    }
    //动画效果
    function animate(_index){//console.log(_index)
      $small_photo.find("li").eq(_index).addClass('active').siblings().removeClass("active");//改变小图导航样式
      $photo_view.find("li").eq(_index).css("z-index",1).siblings().css("z-index",0);//控制absolute的层级
      $photo_view.find("li").eq(_index).show().find("img").css({"opacity": 0});  //装大图的opacity设置为0  
      $photo_view.find("li").eq(_index).find("img").animate({opacity:1},300,function(){
        $(this).removeAttr("style");//动画之后删除opacity
        $photo_view.find("li").eq(_index).show().siblings().hide();//显示大图  
      });//展示当前显示动画
    }
  }
});
<script type="text/javascript">
  $(function(){$("scroll_view").imgScroll({photo_view:$(".photo_view"),small_photo:$(".small_photo"),speed:3000,isauto:true}); 
  })
</script>

以上这篇完美JQuery图片切换效果的简单实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
深入理解JavaScript系列(10) JavaScript核心(晋级高手必读篇)
Jan 15 Javascript
JS获取当前日期和时间的简单实例
Nov 19 Javascript
Angularjs CURD 详解及实例代码
Sep 14 Javascript
JS判断来路是否是百度等搜索索引进行弹窗或自动跳转的实现代码
Oct 09 Javascript
老生常谈原生JS执行环境与作用域
Nov 22 Javascript
浅谈Node.js CVE-2017-14849 漏洞分析(详细步骤)
Nov 10 Javascript
Vue前端开发规范整理(推荐)
Apr 23 Javascript
详解Vue webapp项目通过HBulider打包原生APP
Jun 29 Javascript
JS尾递归的实现方法及代码优化技巧
Jan 19 Javascript
微信小程序用户授权弹窗 拒绝时引导用户重新授权实现
Jul 29 Javascript
如何在 Vue 中使用 JSX
Feb 14 Vue.js
利用uni-app生成微信小程序的踩坑记录
Apr 05 Javascript
jQuery的ajax下载blob文件
Jul 21 #Javascript
picLazyLoad 实现图片延时加载(包含背景图片)
Jul 21 #Javascript
浅谈DOCTYPE对$(window).height()取值的影响
Jul 21 #Javascript
jQuery新窗口打开外链接
Jul 21 #Javascript
JS for循环中i++ 和 ++i的区别介绍
Jul 20 #Javascript
javascript和jQuery实现网页实时聊天的ajax长轮询
Jul 20 #Javascript
Node.js如何自动审核团队的代码
Jul 20 #Javascript
You might like
php判断邮箱地址是否存在的方法
2016/02/13 PHP
PHP实现更改hosts文件的方法示例
2017/08/08 PHP
编写兼容IE和FireFox的脚本
2009/05/18 Javascript
JavaScript定时器和优化的取消定时器方法
2015/07/03 Javascript
在js里怎么实现Xcode里的callFuncN方法(详解)
2016/11/05 Javascript
BootStrap便签页的简单应用
2017/01/06 Javascript
js cookie实现记住密码功能
2017/01/17 Javascript
令按钮悬浮在(手机)页面底部的实现方法
2017/05/02 Javascript
NodeJS使用七牛云存储上传文件的方法
2017/07/24 NodeJs
vue如何安装使用Quill富文本编辑器
2018/09/21 Javascript
vue-router权限控制(简单方式)
2018/10/29 Javascript
express express-session的使用小结
2018/12/12 Javascript
axios携带cookie配置详解(axios+koa)
2018/12/28 Javascript
vue 中 beforeRouteEnter 死循环的问题
2019/04/23 Javascript
layui框架与SSM前后台交互的方法
2019/09/12 Javascript
JavaScript Window窗口对象属性和使用方法
2020/01/19 Javascript
JavaScript 双向链表操作实例分析【创建、增加、查找、删除等】
2020/04/28 Javascript
深入分析jQuery.one() 函数
2020/06/03 jQuery
Python获取当前时间的方法
2014/01/14 Python
Python3访问并下载网页内容的方法
2015/07/28 Python
Python实现Sqlite将字段当做索引进行查询的方法
2016/07/21 Python
使用XML库的方式,实现RPC通信的方法(推荐)
2017/06/14 Python
pandas数据框,统计某列数据对应的个数方法
2018/04/11 Python
Django处理文件上传File Uploads的实例
2018/05/28 Python
Python 利用高德地图api实现经纬度与地址的批量转换
2019/08/14 Python
Python读取csv文件实例解析
2019/12/30 Python
python使用ctypes库调用DLL动态链接库
2020/10/22 Python
利用CSS3的线性渐变linear-gradient制作边框的示例
2016/06/02 HTML / CSS
教育局长自荐信范文
2013/12/22 职场文书
团支书竞选演讲稿
2014/04/28 职场文书
大学新闻系应届生求职信
2014/06/02 职场文书
作风建设年度心得体会
2014/10/29 职场文书
房屋分割离婚协议书范本
2014/12/01 职场文书
2015年妇委会工作总结
2015/05/22 职场文书
红歌会主持词
2015/07/02 职场文书
2015暑期社会实践通讯稿
2015/07/18 职场文书