js实现固定宽高滑动轮播图效果


Posted in Javascript onJanuary 13, 2017

话不多说,请看具体示例代码:

<!DOCTYPE html>
<html lang="en">
<head>
 <meta charset="UTF-8">
 <title>Document</title>
<script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
 <style>
 *{
 margin:0;
 padding:0;
 }
 html, body {
  position: relative;
  height: 100%;
  }
  body {
   background: #eee;
   font-size: 14px;
   color:#000;
   margin: 0;
   padding: 0;
  }
 li{
 list-style: none;
 }
 a{
 text-decoration: none;
 }
 #banner1{
 width:500px;
 }
 .banner{
 width: 500px;
 height:100px;
 border:1px solid red; 
 position: relative;
 margin:40px auto 0;
 overflow: hidden;
 }
 .banner ul{
 width:9999px;
 position: absolute;
 top:0;
 left: 0;
 height: 100%;
 }
 .banner li{
 width:500px;
 float: left;
 height: 100%;
 line-height: 100px;
 }
 .banner li a{
 display: block;
 background:green;
 font-size:30px;
 text-align: center;
 }
 .cur{
 height: 20px;
 position: absolute;
 right: 0;
 bottom:10px;
 text-align: center;
 }
 .cur a{
 display: inline-block;
 width: 20px;
 height: 20px;
 background:yellow;
 margin-left:2px;
 }
 .cur a.active{
 background:red;
 }
 .prve{
 position: absolute;
 top:50%;
 left: 0;
 width:30px;
 height: 30px;
 background: red;
 line-height: 30px;
 text-align:center;
 color:#fff;
 margin-top:-15px;
 }
 .next{
 position: absolute;
 top:50%;
 right: 0;
 width:30px;
 height: 30px;
 background: red;
 line-height: 30px;
 text-align:center;
 color:#fff;
 margin-top:-15px;
 }
 </style>
</head>
<body>
 <div class="banner" id="banner1">
 <ul class="tab">
 <li><a href="###">1</a></li>
 <li><a href="###">2</a></li>
 <li><a href="###">3</a></li>
 </ul>
 <div class="cur"></div>
 <div class="prve"><</div>
 <div class="next">></div>
 </div>
<script>
$(function(){
 cc("banner1",500); 
});
function cc(id,w){
 var i=0;
 var id=$("#"+id);
 var tab=id.children(".tab");
 var tabLi=tab.find("li");
 var clone=tabLi.first().clone();
 tab.append(clone);
 var size=tab.find("li").size(); 
 var cur=id.children(".cur");
 var curA=cur.children("a");
 var prve=id.children(".prve");
 var next=id.children(".next");
 for(var j=0;j<size-1;j++){
 cur.append("<a href='###'></a>");
 }
 cur.find("a").first().addClass("active");
 /*鼠标划入圆点*/
 cur.find("a").hover(function(){
 var index=$(this).index();
 i=index;
 tab.stop().animate({left:-index*w},500) 
 $(this).addClass("active").siblings().removeClass("active") 
 }); 
 /*自动轮播*/
 var t=setInterval(function(){
 i++;
 move()
 },2000)
 /*对banner定时器的操作*/
 id.hover(function(){
 clearInterval(t);
 },function(){
 t=setInterval(function(){
 i++;
 move();
 },2000)
 });
 /*向左的按钮*/
 prve.click(function(){
 i--;
 move(); 
 });
 /*向右的按钮*/
 next.click(function(){
 i++;
 move(); 
 });
 function move(){ 
 if(i==size){
 tab.css({left:0}); 
 i=1;
 };
 if(i==-1){
 tab.css({left:-(size-1)*w});
 i=size-2;
 };
 tab.stop().animate({left:-i*w},500);
 if(i==size-1){
 cur.children("a").eq(0).addClass("active").siblings().removeClass("active") 
 }else{ 
 cur.children("a").eq(i).addClass("active").siblings().removeClass("active") 
 }; 
 };
}
</script> 
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
js常用函数 不错
Sep 08 Javascript
JS 控件事件小结
Oct 31 Javascript
alert出数组中的随即值代码
Sep 25 Javascript
JavaScript中数组添加值和访问值常见问题
Feb 06 Javascript
基于JavaScript实现轮播图代码
Jul 14 Javascript
jquery Ajax 全局调用封装实例详解
Jan 16 Javascript
jquery hover 不停闪动问题的解决方法(亦为stop()的使用)
Feb 10 Javascript
Vant的安装和配合引入Vue.js项目里的方法步骤
Dec 05 Javascript
JavaScript设计模式之装饰者模式实例详解
Jan 17 Javascript
vue动态配置模板 'component is'代码
Jul 04 Javascript
微信小程序中如何计算距离某个节日还有多少天
Jul 15 Javascript
uni-app使用微信小程序云函数的步骤示例
May 22 Javascript
JavaScript利用闭包实现模块化
Jan 13 #Javascript
Vue.js基础知识小结
Jan 13 #Javascript
canvas实现流星雨的背景效果
Jan 13 #Javascript
JavaScript正则表达式替换字符串中图片地址(img src)的方法
Jan 13 #Javascript
原生js实现手风琴功能(支持横纵向调用)
Jan 13 #Javascript
JavaScript使用简单正则表达式的数据验证功能示例
Jan 13 #Javascript
bootstrap网格系统使用方法解析
Jan 13 #Javascript
You might like
推荐文章系统(一)
2006/10/09 PHP
《PHP编程最快明白》第八讲:php启发和小结
2010/11/01 PHP
php skymvc 一款轻量、简单的php
2011/06/28 PHP
解析PHP中intval()等int转换时的意外异常情况
2013/06/21 PHP
PHP垃圾回收机制引用计数器概念分析
2013/06/24 PHP
php操作mysqli(示例代码)
2013/10/28 PHP
php+jQuery递归调用POST循环请求示例
2016/10/14 PHP
PHP递归删除多维数组中的某个值
2017/04/17 PHP
对象的类型:本地对象(1)
2006/12/29 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
跟我学习javascript创建对象(类)的8种方法
2015/11/20 Javascript
JavaScript面向对象程序设计教程
2016/03/29 Javascript
jQuery 实现评论等级好评差评特效
2016/05/06 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
Seajs是什么及sea.js 由来,特点以及优势
2016/10/13 Javascript
用vue-cli开发vue时的代理设置方法
2018/09/20 Javascript
在vue 中使用 less的教程详解
2018/09/26 Javascript
js指定日期增加指定月份的实现方法
2018/12/19 Javascript
jQuery实现倒计时功能完整示例
2020/06/01 jQuery
Vue实现Header渐隐渐现效果的实例代码
2020/11/05 Javascript
跟老齐学Python之私有函数和专有方法
2014/10/24 Python
python安装numpy&amp;安装matplotlib&amp; scipy的教程
2017/11/02 Python
Python实现的直接插入排序算法示例
2018/04/29 Python
解决python3 HTMLTestRunner测试报告中文乱码的问题
2018/12/17 Python
python采集微信公众号文章
2018/12/20 Python
Python使用scrapy爬取阳光热线问政平台过程解析
2019/08/14 Python
利用PyCharm操作Github(仓库新建、更新,代码回滚)
2019/12/18 Python
Django Admin后台模型列表页面如何添加自定义操作按钮
2020/11/11 Python
同步和异步有何异同,在什么情况下分别使用他们
2013/04/09 面试题
我们的节日清明节活动总结
2014/04/30 职场文书
企业党建工作汇报材料
2014/08/19 职场文书
2014年最新个人对照检查材料范文
2014/09/25 职场文书
2014年煤矿工作总结
2014/11/24 职场文书
2016年学校安全教育月活动总结
2016/04/06 职场文书
Golang 如何实现函数的任意类型传参
2021/04/29 Golang
基于Python绘制子图及子图刻度的变换等的问题
2021/05/23 Python