JavaScript图片轮播代码分享


Posted in Javascript onJuly 31, 2015

为大家分享的JavaScript图片轮播代码如下

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<script src="http://lib.sinaapp.com/js/jquery/1.9.1/jquery-1.9.1.min.js"></script>
 
<style>
 
.img-div img{display:none;}
 
</style>
</head>
 
<body>
 
<div class="slide" id="slide">
<div class="img-div">
 <img src="model.jpg" />
 <img src="model2.jpg" />
 <img src="model.jpg" />
 <img src="model2.jpg" />
 <img src="model.jpg" />
</div>
 
<div class="slide-btn">
<a href="#" class="hover">1</a>
<a href="#" class="hover">2</a>
<a href="#" class="hover">3</a>
<a href="#" class="hover">4</a>
<a href="#" class="hover">5</a>
</div>
 
</div>
 
<script type="text/javascript">
 
 
var zBase=
{
 $id:function(id){return document.getElementById(id);},
 $tagName:function(tagName,obj){return ((obj?obj:document).getElementsByTagName(tagName));},
 $c:function(clsN,obj)
 {
  var tag=this.$tagName('*'),reg=new RegExp('(^|\\s)'+clsN+'(\\s|$)'),arr=[];
 
  for(var i=0;i<tag.length;i++)
  {
   if(reg.test(tag[i].className))
   {
    arr.push(tag[i]); 
   } 
  }
  return arr;
   
 },
  
 $add:function(obj,clsN)
 {
  var reg=new RegExp('(^|\\s)'+clsN+'(\\s|$)');
   
  if(!reg.test(obj.className))
  {
   obj.className+=' '+clsN; 
  } 
 },
  
 $remove:function(obj,clsN)
 {
  var cla=obj.className;
  var reg='/|\\s*'+clsN+'\\b/g';
  obj.className=cla?cla.replace(eval(reg),''):''; 
 },
  
 css:function(obj,attr,value)
 {
  if(value)
  {
   obj.style[attr]=value; 
  } 
  else
  {
   return typeof window.getComputedStyle!="undefined"?window.getComputedStyle(obj,null)[attr]:obj.currentStyle[attr]; 
  }
 },
 easing:
  {
   liner:function(t,b,c,d){return c*t/d+b},
   easeOut:function(t,b,c,d){return -c*((t=t/d-1)*t*t*t-1)+b}
  },
   
  config:
  {
   index:0,
   auto:true,
   direct:'left' 
  },
   
  init:function()
  {
   this.slide=this.$id('slide');
   this.img_div=this.$c('img-div')[0];
   this.slide_btn=this.$tagName('a',this.$c('slide-btn')[0]);
   this.img_arr=this.$tagName('img',this.img_div);
    
   
    
   if(this.config.auto){this.play();}
   this.hover();
     
  },
   
  animate:function(obj,attr,val)
  {
   var d=1000;
    
   if(obj[attr+"timer"]){clearInterval(obj[attr+"timer"])};
    
   var start= parseInt(zBase.css(obj,attr));
   var space=val-start,st=(new Date().getTime()),m=space>0?'cell':'floor';
    
   obj[attr+'timer']=setInterval(function(){
    var t=(new Date().getTime()-st);
    if(t<d)
    {
 
     zBase.css(obj,attr,Math[m](zBase.easing["easeOut"](t,start,space,d))+"px");
    }
    else
    {
     clearInterval(obj[attr+'timer']);
     zBase.css(obj,attr,top+space+"px");
    }    
    },20);
    
    
  },
   
  hover:function()
   {
    for(var i=0;i<this.slide_btn.length;i++)
    {
     this.slide_btn[i].index=i;
     this.slide_btn[i].onmouseover=function()
     {
      if(zBase.slide.timer)
      {
       clearInterval(zBase.slide.timer); 
      } 
       
      zBase.config.index=this.index;
       
       
      //console.log(this.slide_btn);
       
      for(var j=0;j<zBase.slide_btn.length;j++)
      {
       zBase.$remove(zBase.slide_btn[j],'hover');
         
      }
       
      zBase.$add(zBase.slide_btn[zBase.config.index],'hover');
      zBase.animate(zBase.img_div,zBase.config.direct,-zBase.config.index*1000);
   
     }
      
     this.slide_btn[i].onmouseout=function()
     {
      zBase.play(); 
     }
    }
    
   },
   play:function(){
    this.slide.timer = setInterval(function(){
      
     var tags=zBase.$tagName('img',this.img_div);
     //zBase.$tagName('img',this.img_div)[zBase.config.index].style.display="block";
      
      
     for(var i =0;i<tags.length;i++)
     {
     if(zBase.config.index==i)
     {
      zBase.$tagName('img',this.img_div)[zBase.config.index].style.display="block";
     } 
     else
     {
      zBase.$tagName('img',this.img_div)[i].style.display="none"; 
     }
     }
      
      
      zBase.config.index++;
     if(zBase.config.index>=zBase.img_arr.length) zBase.config.index=0;
     zBase.animate(zBase.img_div,zBase.config.direct,-zBase.config.index*500);
     for(var j=0;j<zBase.slide_btn.length;j++){
      zBase.$remove(zBase.slide_btn[j],'hover') ;
     }
     zBase.$add(zBase.slide_btn[zBase.config.index],'hover');
    },3000)
   }
  
}
   zBase.init();
  
</script>
 
 </body>
</html>

以上就是为大家分享的JavaScript图片轮播代码,希望大家可以喜欢。

Javascript 相关文章推荐
IE6下focus与blur错乱的解决方案
Jul 31 Javascript
jquery validate poshytip 自定义样式
Nov 26 Javascript
高性能JavaScript DOM编程(1)
Aug 11 Javascript
JS+CSS实现带小三角指引的滑动门效果
Sep 22 Javascript
JavaScript基础知识之方法汇总结
Jan 24 Javascript
jquery实现图片列表鼠标移入微动
Dec 01 Javascript
基于zepto.js实现手机相册功能
Jul 11 Javascript
vue服务端渲染的实例代码
Aug 28 Javascript
vue轮播图插件vue-awesome-swiper
Nov 27 Javascript
原生JS实现手动轮播图效果实例代码
Nov 22 Javascript
js中let能否完全替代IIFE
Jun 15 Javascript
vue 使用localstorage实现面包屑的操作
Nov 16 Javascript
简单实现异步编程promise模式
Jul 31 #Javascript
JavaScript数据类型判定的总结笔记
Jul 31 #Javascript
jquery代码实现多选、不同分享功能
Jul 31 #Javascript
Jquery实现瀑布流布局(备有详细注释)
Jul 31 #Javascript
jquery实现仿JqueryUi可拖动的DIV实例
Jul 31 #Javascript
jQuery+css3实现文字跟随鼠标的上下抖动
Jul 31 #Javascript
JavaScript实现图片轮播的方法
Jul 31 #Javascript
You might like
PHP4实际应用经验篇(6)
2006/10/09 PHP
php中如何判断一个网页请求是ajax请求还是普通请求
2013/08/10 PHP
ThinkPHP独立分组使用的注意事项
2014/11/25 PHP
Zend Framework教程之Zend_Helpers动作助手ViewRenderer用法详解
2016/07/20 PHP
基于CI框架的微信网页授权库示例
2016/11/25 PHP
PHP 匿名函数与注意事项详细介绍
2016/11/26 PHP
Javascript 函数对象的多重身份
2009/06/28 Javascript
关闭时刷新父窗口两种方法
2014/05/07 Javascript
将数字转换成大写的人民币表达式的js函数
2014/09/21 Javascript
6种javascript显示当前系统时间代码
2015/12/01 Javascript
JavaScript原生xmlHttp与jquery的ajax方法json数据格式实例
2015/12/04 Javascript
BootStrap 智能表单实战系列(二)BootStrap支持的类型简介
2016/06/13 Javascript
js中class的点击事件没有效果的解决方法
2016/10/13 Javascript
关于webuploader插件使用过程遇到的小问题
2016/11/07 Javascript
利用iscroll4实现轮播图效果实例代码
2017/01/11 Javascript
jQuery给表格添加分页效果
2017/03/02 Javascript
javascript基本数据类型和转换
2017/03/17 Javascript
echart简介_动力节点Java学院整理
2017/08/11 Javascript
redux中间件之redux-thunk的具体使用
2018/04/17 Javascript
Vue.js更改调试地址端口号的实例
2018/09/19 Javascript
4 种滚动吸顶实现方式的比较
2019/04/09 Javascript
jquery获取input输入框中的值
2019/11/13 jQuery
vue在图片上传的时候压缩图片
2020/11/18 Vue.js
详解Python中dict与set的使用
2015/08/10 Python
Python中第三方库Requests库的高级用法详解
2017/03/12 Python
django中静态文件配置static的方法
2018/05/20 Python
python实现字符串中字符分类及个数统计
2018/09/28 Python
Django用户认证系统 组与权限解析
2019/08/02 Python
使用python无账号无限制获取企查查信息的实例代码
2020/04/17 Python
美国摄影爱好者购物网站:Focus Camera
2016/10/21 全球购物
世界最大的海报和艺术印刷商店:AllPosters.com
2017/02/01 全球购物
ASOS比利时:英国线上零售商及自有品牌
2018/07/29 全球购物
巴基斯坦购物网站:Goto
2019/03/11 全球购物
企业为何需要商业计划书
2013/12/26 职场文书
群众路线教育实践活动对照检查材料
2014/09/22 职场文书
安装Windows Server 2012 R2企业版操作系统并设置好相关参数
2022/04/29 Servers