jQuery简单实现banner图片切换


Posted in Javascript onJanuary 02, 2014

主要运用了定时器的原理,bind,trigger应用等

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>banner切换实现</title>
    <style type="text/css">
        /*
        * @description: banner切换样式
        * @author: lanfeng(beryl)
        * @time:2013-02-26
        */
        /* reset*/
        *{ margin: 0; padding: 0;}
        body{font:12px/1.5 Tahoma,'\5B8B\4F53',arial,Tahoma,helvetica,sans-serif; color:#333333;background-color:#ffffff;position:relative; }
        h1,h2,h3,h4,h5,h6{font-size:100%}
        address,em{font-style:normal;}
        code,kbd,pre,samp{font-family:courier new,courier,monospace;}
        ul,ol{list-style:none outside none;}
        fieldset,img{border:0;}
        img{vertical-align:middle}
        table{border-collapse:collapse;border-spacing:0;font-size:inherit;*font-size:100%;}
        input,button,textarea,select{vertical-align:middle;font:100% Helvetica,Arial,sans-serif; color:inherit}
        .clearfix:after{content:'.';display:block;height:0;clear:both;visibility:hidden;}
        .clearfix{*zoom:1;}
        .clear{font-size:0;line-height:0;height:0;clear:both;visibility:hidden;overflow:hidden;}
        .d-ftab{ width:510px; height: 180px;position: relative; margin: 100px auto;}
        .d-fShow ul li{ float: left; width: 510px; height: 180px;}
        .d-fShow{ width: 510px; height: 180px; overflow: hidden;}
        .d-fShow img{ width: 510px; height: 180px; float: left;}
        .d-fs-control{ position: absolute; width:510px; position: absolute; left: 0; bottom: 0; height: 25px; line-height: 25px;

background: rgba(0,0,0,0.4);
        filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#66000000',
EndColorStr='#66000000') ;  }
        :root  .d-fs-control{filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr='#66000000'
,EndColorStr='#66000000')\9 ;}
        .d-fs-control ul{ position: absolute; bottom:3px; right: 5px; height: 16px;}
        .d-fs-control ul li{width:16px;height:16px; background:#777675;border-radius: 2px 2px 2px 2px; float:left;margin-left:5px;
color:#dcdcdc;text-align:center;font-weight:700;cursor:pointer;line-height:16px;filter: alpha(opacity=70); opacity: 0.7;}
        .d-fs-control ul li:hover,.d-fs-control ul li.select{background:#ffffff;color:#ff6700;}
    </style>
    <script type="text/javascript" src="js/jquery-1.4.2.min.js"></script>
    <script type="text/javascript">
      $(function(){
        var wrap =$('.d-ftab');
          var imgs = wrap.find('.d-fShow ul >li');
          var len=imgs.length  ;
          var tabTime=100;
          var outTime=4000;
          var select='select';
          var num =0 ;
          var interval;
          var type = 'click';
          var btns=wrap.find('.d-fs-control ul>li');
    btns.bind(type,function(){
              var _this=$(this);
              _this.addClass('select').siblings ().removeClass('select');
              num=_this.prevAll().length;
              imgs.stop().eq(num).fadeTo(tabTime,1)  ;
              imgs.not(':eq('+num+')').filter(':visible').fadeOut(tabTime) ;
              return false;
}).eq(num).trigger(type);
          var interFunc=function(){
              num=(num+1)%len;
              btns.eq(num).triggerHandler(type);
          }
          wrap.bind('mouseover',function(){
              clearInterval(interval);
          }).bind('mouseout',function(){
                      interval=setInterval(interFunc,outTime)
                  })
      })
    </script>
</head>
<body>
<div class="d-ftab">
    <div class="d-fShow">
        <ul>
            <li>
                <a href="#"><img alt="" src=" images/1.jpg"/>
                </a>
            </li>
            <li >
                <a href="#"><img alt="" src="images/2.png">
                </a>
            </li>
            <li>
                <a href="#"><img alt=""  src="images/3.jpg">
                </a>
            </li>
            <li>
                <a href=""><img alt="" src="images/4.jpg">
                </a>
            </li>
            <li>
                <a href="#"><img alt="" src="images/5.jpg">
                </a>
            </li>
        </ul>
    </div>
    <div class="d-fs-control">
        <ul>
            <li>1</li>
            <li>2</li>
            <li>3</li>
            <li>4</li>
            <li class="select">5</li>
        </ul>
    </div>
</div>
</body>
</html>

效果如下图:
jQuery简单实现banner图片切换
Javascript 相关文章推荐
JS Timing
Apr 21 Javascript
JavaScript 通过模式匹配实现重载
Aug 12 Javascript
autoIMG 基于jquery的图片自适应插件代码
Mar 12 Javascript
原生JS实现-星级评分系统的简单实例
Aug 21 Javascript
js复制内容到剪贴板代码,js复制代码的简单实例
Oct 27 Javascript
利用select实现年月日三级联动的日期选择效果【推荐】
Dec 13 Javascript
Vue.js实现在下拉列表区域外点击即可关闭下拉列表的功能(自定义下拉列表)
May 30 Javascript
使用vue-cli创建项目的图文教程(新手入门篇)
May 02 Javascript
基于vue.js组件实现分页效果
Dec 29 Javascript
其实你可以少写点if else与switch(推荐)
Jan 10 Javascript
Vue表情输入组件 微信face表情组件
Feb 11 Javascript
vue实现浏览器全屏展示功能
Nov 27 Javascript
利用jQuery简单实现产品展示图片左右滚动功能(示例代码)
Jan 02 #Javascript
使用简洁的jQuery方法实现隔行换色功能
Jan 02 #Javascript
快速解决jQuery与其他库冲突的方法介绍
Jan 02 #Javascript
js/jQuery简单实现选项卡功能
Jan 02 #Javascript
jQuery(js)获取文字宽度(显示长度)示例代码
Dec 31 #Javascript
js判断字符长度以及中英文数字等
Dec 31 #Javascript
checkbox全选所涉及到的知识点介绍
Dec 31 #Javascript
You might like
php ignore_user_abort与register_shutdown_function 使用方法
2009/06/14 PHP
析构函数与php的垃圾回收机制详解
2013/10/28 PHP
Yii2使用表单上传文件的实例代码
2017/08/03 PHP
使用laravel的migrate创建数据表的方法
2019/09/30 PHP
学习ExtJS TextField常用方法
2009/10/07 Javascript
Jquery Select操作方法集合脚本之家特别版
2010/05/17 Javascript
jQuery源码中的chunker 正则过滤符分析
2012/07/31 Javascript
JQuery操作三大控件(下拉,单选,复选)的方法
2013/08/06 Javascript
处理及遍历XML文档DOM元素属性及方法整理
2013/08/23 Javascript
推荐6款基于jQuery实现图片效果插件
2014/12/07 Javascript
JavaScript中setUTCFullYear()方法的使用简介
2015/06/12 Javascript
JavaScript实现页面无操作倒计时退出
2016/10/22 Javascript
Vue.js中关于侦听器(watch)的高级用法示例
2018/05/02 Javascript
json字符串传到前台input的方法
2018/08/06 Javascript
React Hooks的深入理解与使用
2018/11/12 Javascript
微信小程序实现Swiper轮播图效果
2019/11/22 Javascript
vue+elementui实现点击table中的单元格触发事件--弹框
2020/07/18 Javascript
JS如何操作DOM基于表格动态展示数据
2020/10/15 Javascript
[02:09:59]火猫TV国士无双dota2 6.82版本详解(下)
2014/09/29 DOTA
[44:41]Fnatic vs Liquid 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
python3 实现验证码图片切割的方法
2018/12/07 Python
python实现转盘效果 python实现轮盘抽奖游戏
2019/01/22 Python
python程序中的线程操作 concurrent模块使用详解
2019/09/23 Python
django数据模型(Model)的字段类型解析
2019/12/25 Python
Eclipse配置python默认头过程图解
2020/04/26 Python
css3使网页、图片变成灰色兼容大多数浏览器
2014/07/02 HTML / CSS
CSS3制作苹果风格键盘特效
2015/02/26 HTML / CSS
CSS3实现菜单悬停效果
2020/11/17 HTML / CSS
Html5移动端适配IphoneX等机型的方法
2019/06/25 HTML / CSS
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上
2013/07/06 面试题
电子信息专业自荐书
2014/02/04 职场文书
学习十八大报告感言
2014/02/28 职场文书
社区党建工作汇报材料
2014/08/14 职场文书
2014年国庆节演讲稿精选范文1500字
2014/09/25 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
2015年图书馆个人工作总结
2015/05/26 职场文书