EasyShop/Content/images2/mkl/carousel.js
(开头部分) 3KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
/**
* carousel (Version 1.4)
* @author lv ming (akm107@163.com)
*
* Create a carousel
* @example new Carousel(container,showCount,options);
* on Jquery
*
*/
function Carousel(container,showCount,options){
this.container=$(container);
this.clip=$(container+' .J_carousel_clip');
this.list=$(container+' .J_carousel_list');
this.item=$(container+' .J_carousel_item');
this.trigger=$(container+' .J_carousel_trigger');
this.showCount=showCount;
this.timer=null;
this.options=$.extend({
auto:true,
delay:4,
duration:100,
etype:'click',
num:showCount,
vertical:false
},options);
this.init();
}
Carousel.prototype={
init:function(){
var _this=this,
item=this.item, list=this.list, options=this.options,
auto=!!options.auto, vertical=!!options.vertical,
itemLen=item.length, itemW=item.outerWidth(true), itemH=item.outerHeight(true), itemWH=vertical?item.outerHeight(true):item.outerWidth(true);
list[vertical?'height':'width'](itemWH*itemLen).css({position:'absolute'});
var listW=list.outerWidth(true), listH=list.outerHeight(true);
this.clip.css({position:'relative',overflow:'hidden',width:(vertical?Math.max(listW,itemW):itemWH*this.showCount),height:(vertical?itemWH*this.showCount:Math.max(listH,itemH))});
if(itemLen <= this.showCount){
this.trigger.hide();
return;
}
this.trigger.bind(options.etype,this._trigger(this,itemWH));
if(auto){
this._auto();
this.container.hover(function(){_this._stop();},function(){_this._auto();});
}
},
_trigger:function(_this,itemWH){
return function(e){
var listLast, listFirst,
trigger=_this.trigger, list=_this.list, showCount=_this.showCount, options=_this.options, etype=options.etype, duration=options.duration, oNum=options.num,
vertical=!!options.vertical,
itemLen=_this.item.length, num=itemLen/showCount<2||itemLen/oNum<2 ? (itemLen/showCount<2 ? (oNum<itemLen%showCount ? oNum : itemLen%showCount) : showCount) : oNum,
targetClass=e.target.className, animatePara=vertical?[{top:0,opacity:1},{top:-itemWH*num,opacity:1}]:[{left:0,opacity:1},{left:-itemWH*num,opacity:1}];
//opacity修正IE下大图滚动视觉断开bug
if(/prev/i.test(targetClass)){
trigger.unbind(etype);
for(var i=0,len=num; i<len; i++){
listLast=list.find('.J_carousel_item:last');
listLast.prependTo(list);
}
后面还有 32 行代码,购买后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。