1/* 2* ç¾ç·¨ååºä¾ç«é¢è·èæçJSæææè½å·®ï¼åªå¥½èªå·±å»JS..... 3* 4* æ©«åè§¸æ§æ»åææï¼ç®æ¨è½å¤ 循ç°ï¼ä¸åè¢å¹å¤§å°æ¹è®å¼µæ¸ï¼ å°ºå¯¸é©æå¤§å°ç¸®æ¾ 5* */ 6(function ($) { 7$.fn.touchSlideEvents = function (opts) { 8var config = { 9wipeLeft: function () {},//å¾å·¦ 10wipeRight: function () {},//å¾å³ 11wipeUp: function () {},//å¾ä¸ 12wipeDown: function () {},//å¾ä¸ 13loop:true,//æ¯å¦å¯å¾ªç° 14view:2,//é è¨maxWidth以ä¸2å¼µ 15otherView:3,//é è¨maxWidth以ä¸3å¼µ 16maxWidth:767,//é è¨ 17responsive:[],//èªå®ç¾©ä¸åè¢å¹å°ºå¯¸ä¸çè¡çº*éæ²å... 18scroll_flg:true 19}; 20var setting = new Array; 21setting = $.extend({},config,opts); 22var sizeMatch = window.matchMedia("(max-width:"+ setting.maxWidth+"px)"); 23var rwdMode = sizeMatch.matches ? setting.maxWidth+'px' : 'other'; 24var fn_wipeLeft = setting.wipeLeft; 25var fn_wipeRight = setting.wipeRight; 26var fn_wipeUp = setting.wipeUp; 27var fn_wipeDown = setting.wipeDown; 28var _loop = setting.loop; 29var _orientation = window.orientation; 30var pageView = sizeMatch.matches ? setting.view : setting.otherView; 31if(setting.responsive.length>0){ 32if(setting.responsive.length>1){ 33//éæ°æåºï¼maxWidthç±å¤§å°å° 34for(var i=0;i<setting.responsive.length;i++){ 35for(var j = 0; j<setting.responsive.length-i-1;j++){ 36if(setting.responsive[j].maxWidth<setting.responsive[j+1].maxWidth){ 37var tmp = setting.responsive[j+1]; 38setting.responsive[j+1] = setting.responsive[j]; 39setting.responsive[j] = tmp; 40} 41} 42} 43} 44for(var i=0;i<setting.responsive.length;i++){ 45sizeMatch = window.matchMedia("(max-width:"+ setting.responsive[i].maxWidth+"px)"); 46if(sizeMatch.matches){ 47rwdMode = setting.responsive[i].maxWidth+'px'; 48pageView = setting.responsive[i].view != undefined ? setting.responsive[i].view : pageView; 49fn_wipeLeft = setting.responsive[i].wipeLeft != undefined ? setting.responsive[i].wipeLeft : fn_wipeLeft; 50fn_wipeRight = setting.responsive[i].wipeRight != undefined ? setting.responsive[i].wipeRight : fn_wipeRight; 51fn_wipeUp = setting.responsive[i].wipeUp != undefined ? setting.responsive[i].wipeUp : fn_wipeUp; 52fn_wipeDown = setting.responsive[i].wipeDown != undefined ? setting.responsive[i].wipeDown : fn_wipeDown; 53_loop = setting.responsive[i].loop != undefined ? setting.responsive[i].loop : _loop; 54}else{ 55if(rwdMode == setting.responsive[i].maxWidth+'px'){ 56rwdMode = 'other'; 57} 58} 59} 60} 61var el = this; 62var pos = 0; 63var itemW = (el.width()/pageView)*0.95; 64var _list = null; 65var _len = 0; 66var firstIndex = 0; 67var lastIndex = 0; 68var nowTg = 0; 69var moveing = false; 70var ulW = 0; 71el.each(function(){ 72_list = $(this).children().find("li"); 73_len = _list.length; 74firstIndex = 0; 75lastIndex = _len - 1; 76var _startX = null; 77var _startY = null; 78var min_x = 20; 79var min_y = 20; 80var moveX = 0; 81var moveY = 0; 82var flg = 0; 83var first = 0 ; 84var last = 0; 85$(this).children().css({"transition":"150ms ease","overflow":"visible"}); 86if(_loop){ 87firstIndex = (_len-pageView) > pageView ? _len-pageView-1 : firstIndex; 88lastIndex = (_len-pageView) > pageView ? _len-pageView-2 : lastIndex; 89for(var i = 0; i < _len; i++){ 90if(firstIndex>0 && i >= firstIndex){ 91_list.eq(i).css({"-ms-transform":"translate3d("+((i-_len)*itemW)+"px, 0px, 0px)","width":itemW}); 92_list.eq(i).css({"-webkit-transform":"translate3d("+((i-_len)*itemW)+"px, 0px, 0px)","width":itemW}); 93_list.eq(i).css({"transform":"translate3d("+((i-_len)*itemW)+"px, 0px, 0px)","width":itemW}); 94first--; 95}else{ 96_list.eq(i).css({"-ms-transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 97_list.eq(i).css({"-webkit-transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 98_list.eq(i).css({"transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 99last = i; 100} 101} 102}else{ 103var totalW = 0; 104for(var i = 0; i < _len; i++){ 105var _listW = _list.eq(i).attr('slide-fixedW')!=null?parseInt(_list.eq(i).attr('slide-fixedW'),10):itemW; 106_list.eq(i).css({"-ms-transform":"translate3d("+totalW+"px, 0px, 0px)","width":_listW}); 107_list.eq(i).css({"-webkit-transform":"translate3d("+totalW+"px, 0px, 0px)","width":_listW}); 108_list.eq(i).css({"transform":"translate3d("+totalW+"px, 0px, 0px)","width":_listW}); 109last++; 110totalW += _listW; 111} 112ulW = totalW - $(this).width(); 113$(this).children().css('width',ulW+'px'); 114} 115onTouchStart = function(e){ 116e.stopPropagation(); 117if((e.type == "touchstart" && e.touches.length == 1) || e.type == "dragstart") { 118_startX = e.touches ? e.touches[0].pageX : e.pageX; 119_startY = e.touches ? e.touches[0].pageY : e.pageY; 120moveing = true; 121} 122}; 123onTouchMove = function(e){ 124e.stopPropagation(); 125if(e.type == "touchmove" || e.type == "drag"){ 126var x = e.touches ? e.touches[0].pageX : e.pageX; 127var y = e.touches ? e.touches[0].pageY : e.pageY; 128if((e.type == "drag" && e.pageX > 0) || e.type == "touchmove"){ 129moveX = _startX - x; 130moveY = _startY - y; 131var tmpMoveDx = moveX<0?moveX*-1:moveX; 132var tmpMoveDy = moveY<0?moveY*-1:moveY; 133if(tmpMoveDx > 0){ 134if(e.cancelable){ 135e.preventDefault(); 136} 137} 138if(tmpMoveDx > min_x){ 139if(moveing){ 140setting.scroll_flg=false; 141moveing = true; 142//e.stopPropagation(); 143$(this).children().css("-ms-transform","translate3d("+ Math.round(pos - moveX) +"px, 0px, 0px)"); 144$(this).children().css("-webkit-transform","translate3d("+ Math.round(pos - moveX) +"px, 0px, 0px)"); 145$(this).children().css("transform","translate3d("+ Math.round(pos - moveX) +"px, 0px, 0px)"); 146//var range = Math.round(pos/itemW); 147//$(this).children().css("-ms-transform","translate3d("+range +"px, 0px, 0px)"); 148//$(this).children().css("-webkit-transform","translate3d("+ range +"px, 0px, 0px)"); 149//$(this).children().css("transform","translate3d("+range +"px, 0px, 0px)"); 150if(moveX>0){ 151fn_wipeLeft(); 152}else if(moveX<0){ 153fn_wipeRight(); 154} 155if(moveY>0){ 156fn_wipeDown(); 157}else{ 158fn_wipeUp(); 159} 160}else{ 161moveing = false;
162} 163} 164} 165} 166}; 167onTouchEnd = function(e){ 168e.stopPropagation(); 169var tmpMoveDx = moveX<0?moveX*-1:moveX; 170var moveItem_x = Math.round(tmpMoveDx/itemW); 171var flag = false; 172if(moveing && tmpMoveDx >=min_x &&(e.type == "touchend" || e.type == "drag" || e.type == "dragend")){ 173if(!setting.scroll_flg){ 174scroll_flg = true; 175} 176moveing = false; 177var startPos = pos; 178pos = pos - moveX; 179if(pos%itemW != 0){ 180var range = Math.round(pos/itemW); 181//åªè¦æ»åå°±æè·³ä¸ä¸å 182if(moveItem_x<=0){ 183if(moveX>0){ 184range -=1; 185}else if(moveItem_x<=0){ 186range +=1; 187} 188moveItem_x+=1; 189} 190pos = range * itemW; 191} 192$(this).children().css("-ms-transform","translate3d("+ pos +"px, 0px, 0px)"); 193$(this).children().css("-webkit-transform","translate3d("+ pos +"px, 0px, 0px)"); 194$(this).children().css("transform","translate3d("+ pos +"px, 0px, 0px)"); 195flag = true; 196nowTg = nowTg + Math.round((startPos - pos)/itemW); 197if(nowTg < 0){ 198nowTg = _len + nowTg; 199}else if(nowTg >= _len){ 200nowTg = nowTg - _len; 201} 202}else{ 203moveing = true; 204flag = false; 205} 206if(_loop){ 207if(moveX < 0 && flag){ 208for(var i=1 ; i <= moveItem_x;i++){ 209var changePos = (pos *-1) + ((first+ (moveItem_x - i))*itemW); 210_list.eq(lastIndex).css({"-ms-transform":"translate3d("+ changePos +"px, 0px, 0px)"}); 211_list.eq(lastIndex).css({"-webkit-transform":"translate3d("+ changePos +"px, 0px, 0px)"}); 212_list.eq(lastIndex).css({"transform":"translate3d("+ changePos +"px, 0px, 0px)"}); 213firstIndex--; 214lastIndex--; 215if(lastIndex >= _len){ 216lastIndex = _len - lastIndex; 217}else if(lastIndex < 0){ 218lastIndex = _len + lastIndex; 219} 220if(firstIndex >= _len){ 221firstIndex = _len - firstIndex; 222}else if(firstIndex < 0){ 223firstIndex = _len + firstIndex; 224} 225} 226}else if(moveX > 0 && flag){ 227for(var i=1;i<=moveItem_x;i++){ 228var changePos = (pos*-1) + ((last-(moveItem_x-i))*itemW); 229_list.eq(firstIndex).css({"-ms-transform":"translate3d("+ changePos +"px, 0px, 0px)"}); 230_list.eq(firstIndex).css({"-webkit-transform":"translate3d("+ changePos +"px, 0px, 0px)"}); 231_list.eq(firstIndex).css({"transform":"translate3d("+ changePos +"px, 0px, 0px)"}); 232firstIndex++; 233lastIndex++; 234if(lastIndex >= _len){ 235lastIndex = _len - lastIndex; 236}else if(lastIndex < 0){ 237lastIndex = _len + lastIndex; 238} 239if(firstIndex >= _len){ 240firstIndex = _len - firstIndex; 241}else if(firstIndex < 0){ 242firstIndex = _len + firstIndex; 243} 244} 245} 246}else{ 247if(pos > 0 ){ 248$(this).children().css("-ms-transform","translate3d(0px, 0px, 0px)"); 249$(this).children().css("-webkit-transform","translate3d(0px, 0px, 0px)"); 250$(this).children().css("transform","translate3d(0px, 0px, 0px)"); 251pos = 0; 252}else if(pos <= (ulW *-1) ){ 253$(this).children().css("-ms-transform","translate3d("+ (ulW*-1) +"px, 0px, 0px)"); 254$(this).children().css("-webkit-transform","translate3d("+ (ulW*-1 ) +"px, 0px, 0px)"); 255$(this).children().css("transform","translate3d("+ (ulW*-1) +"px, 0px, 0px)"); 256pos = ulW*-1; 257} 258} 259moveX = 0; 260moveY =0; 261_startX = null; 262_startY = null; 263}; 264function stopScroll(e){ 265e.preventDefault(); 266} 267this.removeEventListener('touchstart', onTouchStart,false); 268this.removeEventListener('touchmove', onTouchMove,false); 269//this.removeEventListener('touchmove', stopScroll,true); 270this.removeEventListener('touchend', onTouchEnd,false); 271this.removeEventListener('touchcancel', onTouchEnd,false) 272this.removeEventListener("dragstart", onTouchStart,false); 273this.removeEventListener("drag", onTouchMove,false); 274this.removeEventListener("drag", stopScroll,false); 275this.removeEventListener("dragend", onTouchEnd,false); 276this.addEventListener('touchstart', onTouchStart,false); 277this.addEventListener('touchmove', onTouchMove,false); 278//this.addEventListener('touchmove', stopScroll,true); 279this.addEventListener('touchend', onTouchEnd,false); 280this.addEventListener('touchcancel', onTouchEnd,false) 281this.addEventListener("dragstart", onTouchStart,false); 282this.addEventListener("drag", onTouchMove,false); 283//this.addEventListener("drag", stopScroll,true); 284this.addEventListener("dragend", onTouchEnd,false); 285}); 286var resize = function(el){ 287var newPos = 0; 288pos = 0; 289if(_loop){ 290var f = firstIndex; 291var l = lastIndex; 292var flg = nowTg < firstIndex ? true : false; 293if(flg){ 294for(var i = (firstIndex - _len - nowTg); i <= lastIndex; i++){ 295if(f == _len){ 296f = 0; 297} 298_list.eq(f).css({"-ms-transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 299_list.eq(f).css({"-webkit-transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 300_list.eq(f).css({"transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 301f++; 302} 303}else{ 304for(var i = (firstIndex - nowTg); i < (_len + firstIndex-nowTg); i++){ 305if(f == _len){ 306f = 0; 307} 308_list.eq(f).css({"-ms-transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 309_list.eq(f).css({"-webkit-transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 310_list.eq(f).css({"transform":"translate3d("+(i*itemW)+"px, 0px, 0px)","width":itemW}); 311f++; 312} 313} 314if(el.css("height") > itemW*1.67){ 315el.css("height",itemW*1.67); 316} 317el.children().css("ms-transform","translate3d(0px, 0px, 0px)"); 318el.children().css("-webkit-transform","translate3d(0px, 0px, 0px)"); 319el.children().css("transform","translate3d(0px, 0px, 0px)"); 320}else{ 321var totalW = 0; 322var nowtrans; 323for(var i = 0; i < _len; i++){ 324var _listW = _list.eq(i).attr('slide-fixedW')!=null?parseInt(_list.eq(i).attr('slide-fixedW'),10):itemW; 325_list.eq(i).css({"-ms-transform":"translate3d("+totalW+"px, 0px, 0px)","width":_listW}); 326_list.eq(i).css({"-webkit-transform":"translate3d("+totalW+"px, 0px, 0px)","width":_listW}); 327_list.eq(i).css({"transform":"translate3d("+totalW+"px, 0px, 0px)","width":_listW}); 328totalW += _listW; 329} 330ulW = totalW - $(this).width(); 331el.children().css('width',ulW+'px'); 332//el.children().css("-ms-transform","translate3d("+ nowtrans+"px, 0px, 0px)"); 333//el.children().css("-webkit-transform","translate3d("+ nowtrans+"px, 0px, 0px)"); 334//el.children().css("transform","translate3d("+ nowtrans+"px, 0px, 0px)"); 335} 336} 337$(window).on("resize", function () { 338var nowO = window.orientation; 339nowO = window.orientation<0?window.orientation*-1:window.orientation; 340if(_orientation!=nowO || nowO==undefined){ 341if(sizeMatch.matches){ 342if(rwdMode =='other'){ 343rwdMode = setting.maxWidth+'px'; 344pageView = setting.view; 345} 346}else{ 347if(rwdMode == setting.maxWidth+'px'){ 348rwdMode = 'other'; 349pageView = setting.otherView; 350} 351}
352if(setting.responsive.length>0){ 353for(var i=0;i<setting.responsive.length;i++){ 354sizeMatch = window.matchMedia("(max-width:"+ setting.responsive[i].maxWidth+"px)"); 355if(sizeMatch.matches){ 356if(rwdMode != setting.responsive[i].maxWidth+'px'){ 357rwdMode = setting.responsive[i].maxWidth+'px'; 358pageView = setting.responsive[i].view != undefined ? setting.responsive[i].view : pageView; 359fn_wipeLeft = setting.responsive[i].wipeLeft != undefined ? setting.responsive[i].wipeLeft : fn_wipeLeft; 360fn_wipeRight = setting.responsive[i].wipeRight != undefined ? setting.responsive[i].wipeRight : fn_wipeRight; 361fn_wipeUp = setting.responsive[i].wipeUp != undefined ? setting.responsive[i].wipeUp : fn_wipeUp; 362fn_wipeDown = setting.responsive[i].wipeDown != undefined ? setting.responsive[i].wipeDown : fn_wipeDown; 363_loop = setting.responsive[i].loop != undefined ? setting.responsive[i].loop : _loop; 364} 365}else{ 366if(rwdMode == setting.responsive[i].maxWidth+'px'){ 367rwdMode = 'other'; 368}else{ 369break; 370} 371} 372} 373} 374itemW = (el.width()/pageView)*0.95; 375if(nowO!=undefined){ 376_orientation = nowO 377} 378resize(el); 379}else{ 380} 381}); 382} 383})(jQuery);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.