html图片轮播replace,JavaScript实现图片轮播的方法

本文实例讲述了JavaScript实现图片轮播的方法。分享给大家供大家参考。具体如下:

这里没有使用到JQUERY,没有过渡效果,图片可自行替换 。

test2.html页面:

/p>

"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

无标题文档

.img-div img{display:none;}

model.jpg

model2.jpg

model.jpg

model2.jpg

model.jpg

1

2

3

4

5

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

{

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

{

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[i].index=i;

this.slide_btn[i].οnmοuseοver=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.$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].οnmοuseοut=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

{

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.$remove(zBase.slide_btn[j],'hover') ;

}

zBase.$add(zBase.slide_btn[zBase.config.index],'hover');

},3000)

}

}

zBase.init();

希望本文所述对大家的javascript程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值