/*! * TouchSlide v1.1 * javascript瑙﹀睆婊戝姩鐗规晥鎻掍欢锛岀Щ鍔ㄧ婊戝姩鐗规晥锛岃Е灞忕劍鐐瑰浘锛岃Е灞廡ab鍒囨崲锛岃Е灞忓鍥惧垏鎹㈢瓑 * 璇﹀敖淇℃伅璇风湅瀹樼綉锛歨ttp://www.SuperSlide2.com/TouchSlide/ * * Copyright 2013 澶ц瘽涓诲腑 * * 璇峰皧閲嶅師鍒涳紝淇濈暀澶撮儴鐗堟潈 * 鍦ㄤ繚鐣欑増鏉冪殑鍓嶆彁涓嬪彲搴旂敤浜庝釜浜烘垨鍟嗕笟鐢ㄩ€ * 1.1 瀹藉害鑷€傚簲锛堜慨澶嶅畨鍗撴í灞忔椂婊戝姩鑼冨洿涓嶅彉鐨刡ug锛 */ var TouchSlide = function(a){ a = a||{}; var opts = { slideCell:a.slideCell || "#touchSlide", //杩愯鏁堟灉涓诲璞★紝蹇呴』鐢╥d锛侊紝渚嬪 slideCell:"#touchSlide" titCell:a.titCell || ".hd li", // 瀵艰埅瀵硅薄锛屽綋鑷姩鍒嗛〉璁句负true鏃朵负鈥滃鑸璞″寘瑁瑰眰鈥 mainCell:a.mainCell || ".bd", // 鍒囨崲瀵硅薄鍖呰9灞 effect:a.effect || "left", // 鏁堟灉锛屾敮鎸 left銆乴eftLoop autoPlay:a.autoPlay || false, // 鑷姩鎾斁 delayTime:a.delayTime || 200, // 鏁堟灉鎸佺画鏃堕棿 interTime:a.interTime ||2500, // 鑷姩杩愯闂撮殧 defaultIndex:a.defaultIndex ||0, // 榛樿鐨勫綋鍓嶄綅缃储寮曘€?鏄涓€涓紱 defaultIndex:1 鏃讹紝鐩稿綋浜庝粠绗?涓紑濮嬫墽琛 titOnClassName:a.titOnClassName ||"on", // 褰撳墠瀵艰埅瀵硅薄娣诲姞鐨刢lassName autoPage:a.autoPage || false, // 鑷姩鍒嗛〉锛屽綋涓簍rue鏃秚itCell涓衡€滃鑸璞″寘瑁瑰眰鈥 prevCell:a.prevCell ||".prev", // 鍓嶄竴椤垫寜閽 nextCell:a.nextCell ||".next", // 鍚庝竴椤垫寜閽 pageStateCell:a.pageStateCell ||".pageState", // 鍒嗛〉鐘舵€佸璞★紝鐢ㄤ簬鏄剧ず鍒嗛〉鐘舵€侊紝渚嬪锛?/3 pnLoop:a.pnLoop=='undefined '?true:a.pnLoop , // 鍓嶅悗鎸夐挳鐐瑰嚮鏄惁缁х画鎵ц鏁堟灉锛屽綋涓烘渶鍓?鍚庨〉鏄細鑷姩娣诲姞鈥減revStop鈥?鈥渘extStop鈥濇帶鍒舵牱鑹 startFun:a.startFun || null, // 姣忔鍒囨崲鏁堟灉寮€濮嬫椂鎵ц鍑芥暟锛岀敤浜庡鐞嗙壒娈婃儏鍐垫垨鍒涘缓鏇村鏁堟灉銆傜敤娉 satrtFun:function(i,c){ }锛 鍏朵腑i涓哄綋鍓嶅垎椤碉紝c涓烘€婚〉鏁 endFun:a.endFun || null, // 姣忔鍒囨崲鏁堟灉缁撴潫鏃舵墽琛屽嚱鏁帮紝鐢ㄤ簬澶勭悊鐗规畩鎯呭喌鎴栧垱寤烘洿澶氭晥鏋溿€傜敤娉 endFun:function(i,c){ }锛 鍏朵腑i涓哄綋鍓嶅垎椤碉紝c涓烘€婚〉鏁 switchLoad:a.switchLoad || null //姣忔鍒囨崲鏁堟灉缁撴潫鏃舵墽琛屽嚱鏁帮紝鐢ㄤ簬澶勭悊鐗规畩鎯呭喌鎴栧垱寤烘洿澶氭晥鏋溿€傜敤娉 endFun:function(i,c){ }锛 鍏朵腑i涓哄綋鍓嶅垎椤碉紝c涓烘€婚〉鏁 } var slideCell = document.getElementById(opts.slideCell.replace("#","")); if( !slideCell ) return false; //绠€鍗曟ā鎷焜query閫夋嫨鍣 var obj = function(str,parEle){ str = str.split(" "); var par = []; parEle = parEle||document; var retn = [ parEle ] ; for( var i in str ){ if(str[i].length!=0) par.push(str[i]) } //鍘绘帀閲嶅绌烘牸 for( var i in par ){ if( retn.length==0 ) return false; var _retn = []; for ( var r in retn ) { if( par[i][0] =="#" ) _retn.push( document.getElementById( par[i].replace("#","") ) ); else if( par[i][0] =="." ){ var tag = retn[r].getElementsByTagName('*'); for( var j=0; j" } } else{ for( var i=0; i'); conBox.style.cssText="width:"+tempSize*slideW+"px;"+"position:relative;overflow:hidden;padding:0;margin:0;"; for ( var i =0; i= navObjSize) { index = isTouch?index-1:0; } else if( index < 0) { index = isTouch?0:navObjSize-1; } if( sLoad!=null ){ doSwitchLoad(0) } translate( (-index*slideW),delayTime ); oldIndex=index; break; case "leftLoop": if( sLoad!=null ){ doSwitchLoad(0) } translate( -(index+1)*slideW ,delayTime ); if ( index==-1){ timeout= setTimeout( function(){ translate( -navObjSize*slideW ,0 ); }, delayTime ); index = navObjSize-1; } else if( index==navObjSize ){ timeout= setTimeout( function(){ translate( -slideW ,0 ); }, delayTime ); index = 0; } oldIndex=index; break;// leftLoop end }//switch end doStartFun(); endTimeout= setTimeout( function(){ doEndFun() }, delayTime ); //璁剧疆className for ( var i=0; i/"+navObjSize; } };// doPlay end //鍒濆鍖栨墽琛 doPlay(); //鑷姩鎾斁 if (autoPlay) { inter=setInterval(function(){ index++; doPlay() }, interTime); } //鐐瑰嚮浜嬩欢 if( navObj ){ for ( var i=0; i 1 || e.scale && e.scale !== 1) return }; //澶氱偣鎴栫缉鏀 var point = hasTouch ? e.touches[0] : e; distX = point.pageX-startX; distY = point.pageY-startY; if ( typeof scrollY == 'undefined') { scrollY = !!( scrollY || Math.abs(distX) < Math.abs(distY) ); } if( !scrollY ){ e.preventDefault(); if(autoPlay){clearInterval(inter) } switch (effect){ case "left": if( (index==0 && distX>0) || (index>=navObjSize-1&&distX<0 )){ distX=distX*0.4 } translate( -index*slideW+distX ,0 ); break; case "leftLoop":translate( -(index+1)*slideW+distX ,0 );break; } if( sLoad!=null && Math.abs(distX)>slideW/3 ){ doSwitchLoad( distX>-0?-1:1 ) } } } //瑙︽懜缁撴潫鍑芥暟 var tEnd = function(e){ if(distX==0) return; e.preventDefault(); if( !scrollY ) { if( Math.abs(distX) > slideW/10 ){ distX>0? index--: index++; } doPlay( true ); if (autoPlay) { inter=setInterval(function(){ index++; doPlay() }, interTime); } } conBox.removeEventListener(touchMove, tMove, false); conBox.removeEventListener(touchEnd, tEnd, false); } //娣诲姞鈥滆Е鎽稿紑濮嬧€濅簨浠剁洃鍚 conBox.addEventListener(touchStart, tStart ,false); }// TouchSlide E