<div class="carousel-box">
<div class="carousel">
<ul class="clearfix" >
<li><img src="img/carousel01.jpg" alt=""></li>
<li><img src="img/carousel02.jpg" alt=""></li>
<li><img src="img/carousel03.jpg" alt=""></li>
<li><img src="img/carousel04.jpg" alt=""></li>
<li><img src="img/carousel05.jpg" alt=""></li>
<li><img src="img/carousel06.jpg" alt=""></li>
</ul>
</div>
</div>
/*需要更改的值*/
.carousel img{
width: 600px;
height: 400px;
}
.carousel,
.carousel-box {
width: 600px; /*单张图片宽度*/
height: 400px; /*单张图片高度*/
}
.carousel ul{
width: 3600px; /*单张图片宽度x图片数量*/
}
liner=function(ele,prop,next,num){
var speed=(next-ele[prop])/num,
i=0;
(function(){
ele[prop]+=speed;
i++;
if (i<num) {
setTimeout(arguments.callee,30);
}
})();
},
light=function(index){
removeClass(active,"active");
active=$(this.wrapSelec+" "+"[index="+index+"]");
addClass(active,"active");
}
go=function(dire){
var index=active.getAttribute("index")-0,
nextIndex,
nextPosition;
if (dire==="next") {
nextIndex=(index+1)%len;
nextPosition=(ele.scrollLeft+width)%(width*len);
}else{
nextIndex=index===0? len-1:index-1,
nextPosition=ele.scrollLeft===0?width*len:ele.scrollLeft-width;
}
light(nextIndex);
animate.liner(ele,"scrollLeft",nextPosition);
}
createArrow=function(){
var prev=document.createElement("div"),
next=document.createElement("div");
prev.appendChild(document.createTextNode("<"));
next.appendChild(document.createTextNode(">"));
prev.className="arrow prev";
next.className="arrow next";
container.appendChild(prev);
container.appendChild(next);
addClass(container,"hide");
$.add(next,"click",function(){
go("next");
});
$.add(prev,"click",function(){
go("prev");
});
}
createBtn=function(){
var div=document.createElement("div"),
btns='';
for(var i=0;i<len;i++){
btns+='<a href="#" index="'+i+'"></a>';
}
div.innerHTML=btns;
addClass(div,"carousel-btn");
container.appendChild(div);
}
circle=function(){
count++;
if (loop||count<len) {
if (direction==="forward") {
go("next");
}else{
go("prev");
}
}
begin=setTimeout(arguments.callee,t);
}
stop=function(){
clearTimeout(begin);
}
init=function(){
createBtn();
createArrow();
$.delegateTag(wrapSelec+" "+".carousel-btn","a","click",function(e,target){
$.prevent(e);
light(target.getAttribute("index"));
animate.liner(ele,"scrollLeft",target.getAttribute("index")*width);
});
$.add(container,"mouseenter",function(){
stop();
removeClass(container,"hide");
});
$.add(container,"mouseleave",function(){
addClass(container,"hide");
begin=setTimeout(circle,t);
});if (direction==="forward") {
light(0);
}else{
light(len-1);
ele.scrollLeft=width*(len-1);
}
haveStart=true;
}
start=function(dir,th,lo){
stop();
count=0;
direction=dir;
t=th*1000;
loop=lo;
if (!haveStart) {
init();
}
begin=setTimeout(circle,t);
}
carouselProto.init=function(){
var that=this;
this.createBtn();
this.createArrow();
$.delegateTag(this.wrapSelec+" "+".carousel-btn","a","click",function(e,target){
$.prevent(e);
that.light(target.getAttribute("index"));
animate.liner(that.ele,"scrollLeft",target.getAttribute("index")*that.width);
});
$.add(this.container,"mouseenter",function(){
that.stop();
removeClass(that.container,"hide");
});
$.add(this.container,"mouseleave",function(){
addClass(that.container,"hide");
that.begin=setTimeout(function(){
that.circle();
},that.t);
});if (this.direction==="forward") {
this.light(0);
}else{
this.light(this.len-1);
this.ele.scrollLeft=this.width*(this.len-1);
}
this.haveStart=true;
};
var carouselProto={};
//把上面那些方法给这个对象
carouselProto.light=...
carouselProto.go=...
carouselProto.stop=...
//创建实例对象函数
var carousel=function(eleSelec,wrapSelec){
var that=Object.create(carouselProto);
that.wrapSelec=wrapSelec;
that.ele=$(eleSelec);
that.container=$(wrapSelec);
that.len=that.ele.getElementsByTagName("img").length;
that.width=parseInt(getCSS(that.ele.getElementsByTagName("img")[0],"width"));
return that;
}
//创建实例,使用组件
var carousel1=carousel(".carousel",".carousel-box");
carousel1.start("forward",3,true);
var carousel2=carousel(".carousel2",".carousel-box2");
carousel2.start("backward",2,true);
$.delegateTag(this.wrapSelec+" "+".carousel-btn","a","click",function(e,target){
$.prevent(e);
var index=target.getAttribute("index");
if (index===that.active.getAttribute("index")) {
return
}
that.light(index);
animate.liner(that.ele,"scrollLeft",target.getAttribute("index")*that.width);
});
liner=function(ele,prop,next){
var speed=(next-ele[prop])/10,
i=0;
ele.animating=true;
(function(){
ele[prop]+=speed;
i++;
if (i<10) {
setTimeout(arguments.callee,60);
}else{
ele.animating=false;
}
})();
}
if (!this.ele.animating) {
this.light(nextIndex);
animate.liner(this.ele,"scrollLeft",nextPosition);
}
机械节能产品生产企业官网模板...
大气智能家居家具装修装饰类企业通用网站模板...
礼品公司网站模板
宽屏简约大气婚纱摄影影楼模板...
蓝白WAP手机综合医院类整站源码(独立后台)...苏ICP备2024110244号-2 苏公网安备32050702011978号 增值电信业务经营许可证编号:苏B2-20251499 | Copyright 2018 - 2025 源码网商城 (www.ymwmall.com) 版权所有