运用jQuery定时器的原理实现banner图片切换


Posted in Javascript onOctober 22, 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的递增/递减运算符和带操作的赋值运算符的等价式
Dec 08 Javascript
js获取height和width的方法说明
Jan 06 Javascript
JS HTML5 音乐天气播放器(Ajax获取天气信息)
May 26 Javascript
Knockout数组(observable)使用详解示例
Nov 15 Javascript
js实现异步循环实现代码
Feb 16 Javascript
浅谈javascript中的三种弹窗
Oct 21 Javascript
JavaScript中绑定事件的三种方式及去除绑定
Nov 05 Javascript
bootstrapvalidator之API学习教程
Jun 29 Javascript
angular.js中解决跨域问题的三种方式
Jul 12 Javascript
Vue slot用法(小结)
Oct 22 Javascript
JavaScript 面向对象程序设计详解【类的创建、实例对象、构造函数、原型等】
May 12 Javascript
react使用antd的上传组件实现文件表单一起提交功能(完整代码)
Jun 29 Javascript
用简洁的jQuery方法toggleClass实现隔行换色
Oct 22 #Javascript
jQuery实现的导航条切换可显示隐藏
Oct 22 #Javascript
原生js和jQuery随意改变div属性style的名称和值
Oct 22 #Javascript
一个不错的js html页面倒计时可精确到秒
Oct 22 #Javascript
js实现select跳转功能代码
Oct 22 #Javascript
Javascript原型链和原型的一个误区
Oct 22 #Javascript
Javascript this 关键字 详解
Oct 22 #Javascript
You might like
推荐几款用 Sublime Text 开发 Laravel 所用到的插件
2014/10/30 PHP
php如何修改SESSION的生存存储时间的实例代码
2017/07/05 PHP
PHP基于GD2函数库实现验证码功能示例
2019/01/27 PHP
PHP PDOStatement::nextRowset讲解
2019/02/01 PHP
JCalendar 日历控件 v1.0 beta[兼容IE&amp;Firefox] 有文档和例子
2007/05/30 Javascript
jquery实现表格本地排序的方法
2015/03/11 Javascript
JavaScript整除运算函数ceil和floor的区别分析
2015/04/14 Javascript
jQuery中 attr() 方法使用小结
2015/05/03 Javascript
jQuery实现最简单的切换图效果【可兼容IE6、火狐、谷歌、opera等】
2016/09/04 Javascript
AngularJS自定义控件实例详解
2016/12/13 Javascript
简单实现JS计算器功能
2016/12/21 Javascript
关于Stream和Buffer的相互转换详解
2017/07/26 Javascript
vue父组件向子组件传递多个数据的实例
2018/03/01 Javascript
nodejs多版本管理总结
2018/04/03 NodeJs
微信小程序中限制激励式视频广告位显示次数(实现思路)
2019/12/06 Javascript
JavaScript利用键盘码控制div移动
2020/03/19 Javascript
JS co 函数库的含义和用法实例总结
2020/04/08 Javascript
[01:15]PWL S2开团时刻第二期——他们杀 我就白给
2020/11/25 DOTA
python结合opencv实现人脸检测与跟踪
2015/06/08 Python
Python网络编程中urllib2模块的用法总结
2016/07/12 Python
python实现逻辑回归的方法示例
2017/05/02 Python
python字典DICT类型合并详解
2017/08/17 Python
详解Python在七牛云平台的应用(一)
2017/12/05 Python
Python之读取TXT文件的方法小结
2018/04/27 Python
Python 移动光标位置的方法
2019/01/20 Python
Python logging设置和logger解析
2019/08/28 Python
python同义词替换的实现(jieba分词)
2020/01/21 Python
解决django migrate报错ORA-02000: missing ALWAYS keyword
2020/07/02 Python
Europcar西班牙:全球汽车租赁领域的领导者
2018/09/17 全球购物
法国低价在线宠物商店:bitiba.fr
2020/07/03 全球购物
新生入学欢迎词
2015/01/26 职场文书
人生遥控器观后感
2015/06/11 职场文书
学校教师培训工作总结
2015/10/14 职场文书
python 实现德洛内三角剖分的操作
2021/04/22 Python
MySQL 查询速度慢的原因
2021/05/25 MySQL
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python