1/* jQuery based image slider 2/* TMSlider 0.3.1 */ 3(function($,undefined){ 4 var _TMS=window._TMS=$.fn._TMS=function(_){ 5 _=_||{} 6 _=$.extend(clone(_TMS),_TMS.presets[_.preset],_) 7 _.init.call(_.me=_.holder=this,_) 8 return _.me.data({opt:_}) 9 } 10 11 $.extend(_TMS,{ 12 etal:'<div></div>', 13 items:'.items>li', 14 pic:'pic', 15 mask:'mask', 16 paginationCl:'pagination', 17 currCl:'current', 18 pauseCl:'paused', 19 bannerCl:'banner', 20 numStatusCl:'numStatus', 21 pagNums:true, 22 overflow:'hidden', 23 show:0, 24 changeEv:'click', 25 blocksX:1, 26 blocksY:1, 27 preset:'simpleFade', 28 duration:0, 29 easing:'linear', 30 way:'lines', 31 anim:'fade', 32 pagination:false, 33 banners:false, 34 waitBannerAnimation:true, 35 slideshow:false, 36 progressBar:false, 37 pauseOnHover:true, 38 nextBu:false, 39 prevBu:false, 40 playBu:false, 41 preFu:function(){ 42 var _=this, 43 img=$(new Image()) 44 _.pic=$(_.etal) 45 .addClass(_.pic) 46 .css({overflow:_.overflow}) 47 .appendTo(_.me) 48 _.mask=$(_.etal) 49 .addClass(_.mask) 50 .appendTo(_.pic) 51 52 if(_.me.css('position')=='static') 53 _.me.css({position:'relative'}) 54 if(_.me.css('z-index')=='auto') 55 _.me.css({zIndex:1}) 56 57 _.me.css({overflow:_.overflow}) 58 59 if(_.items) 60 _.parseImgFu() 61 img 62 .appendTo(_.me) 63 .load(function(){ 64 _.pic 65 .css({ 66 width:_.width=img.width(), 67 height:_.height=img.height(), 68 background:'url('+_.itms[_.show]+') 0 0 no-repeat' 69 }) 70 img.remove() 71 _.current=_.buff=_.show 72 }) 73 .attr({src:_.itms[_.n=_.show]}) 74 }, 75 sliceFu:function(w,h){ 76 var _=this, 77 w=_.blocksX, 78 h=_.blocksY, 79 eW=parseInt(_.width/w), 80 eH=parseInt(_.height/h), 81 etal=$(_.etal), 82 fW=_.pic.width()-eW*w, 83 fH=_.pic.height()-eH*h, 84 x,y, 85 matrix=_.matrix=[] 86 87 _.mask 88 .css({ 89 position:'absolute', 90 width:'100%', 91 height:'100%', 92 left:0, 93 top:0, 94 zIndex:1 95 }) 96 .empty() 97 .appendTo(_.pic) 98 99 for(y=0;y<h;y++) 100 for(x=0;x<w;x++) 101 matrix[y]=matrix[y]?matrix[y]:[], 102 matrix[y][x]=$(_.etal).clone() 103 .appendTo(_.mask) 104 .css({ 105 left:x*eW, 106 top:y*eH, 107 position:'absolute', 108 width:x==w-1?eW+fW:eW, 109 height:y==h-1?eH+fH:eH, 110 backgroundPosition:'-'+x*eW+'px -'+y*eH+'px', 111 display:'none' 112 }) 113 if(_.maskC){ 114 _.maskC.remove() 115 delete _.maskC 116 } 117 _.maskC=_.mask.children() 118 }, 119 changeFu:function(n){ 120 var _=this 121 if(_.bl) 122 return false 123 if(n==_.n) 124 return false 125 _.n=n 126 _.next=_.itms[n] 127 _.direction=n-_.buff 128 if(_.direction==_.itms.length-1) 129 _.direction=-1 130 if(_.direction==-1*_.itms.length+1) 131 _.direction=2 132 _.current=_.buff=n 133 134 if(_.numStatus) 135 _.numStatusChFu() 136 137 if(_.pagination) 138 _.pags 139 .removeClass(_.currCl) 140 .eq(n) 141 .addClass(_.currCl) 142 143 if(_.banners!==false&&_.banner) 144 _.bannerHide(_.banner,_) 145 if(_.progressBar) 146 clearInterval(_.slShTimer), 147 _.progressBar.stop() 148 if(_.slideshow&&!_.paused&&_.progressBar) 149 _.progressBar.stop().width(0) 150 151 var _fu=function(){ 152 //if(_.banner) 153 //$.when(_.banner).then(function(){_.banner.detach()}) 154 if(_.preset_!=_.preset) 155 _.du=_.duration, 156 _.ea=_.easing, 157 $.extend(_,_TMS.presets[_.preset]), 158 _.duration=_.du, 159 _.easing=_.ea, 160 _.preset_=_.preset 161 _.sliceFu() 162 _.maskC.stop().css({backgroundImage:'url('+_.next+')'}) 163 _.beforeAnimation() 164 _.showFu() 165 } 166 if(_.waitBannerAnimation) 167 $.when(_.banner).then(_fu) 168 else 169 _fu() 170 }, 171 nextFu:function(){ 172 var _=this, 173 n=_.n 174 _.changeFu(++n<_.itms.length?n:0) 175 }, 176 prevFu:function(){ 177 var _=this, 178 n=_.n 179 _.changeFu(--n>=0?n:_.itms.length-1) 180 }, 181 showFu:function(){ 182 var _=this, 183 way, 184 tmp 185 186 way=_.ways[_.way].call(_) 187 188 if(_.reverseWay) 189 way.reverse() 190 if(_.dirMirror) 191 way=_.dirMirrorFu(way) 192 193 if(_.int) 194 clearInterval(_.int) 195 _.int=setInterval(function(){ 196 if(way.length) 197 _.anims[_.anim].apply(_,[way.shift(),!way.length]) 198 else 199 clearInterval(_.int)//, 200 //$.when(_.maskC).then(function(){_.maskC.remove(),delete _.maskC}) 201 },_.interval) 202 _.bl=true 203 }, 204 dirMirrorFu:function(way){ 205 var _=this 206 if(_.direction<0) 207 void(0) 208 return way 209 }, 210 afterShow:function(){ 211 var _=this 212 _.pic.css({backgroundImage:'url('+_.next+')'}) 213 _.maskC.hide() 214 if(_.slideshow&&!_.paused) 215 _.startSlShFu(0) 216 if(_.banners!==false) 217 _.banner=_.banners[_.n] 218 if(_.banner) 219 _.banner.appendTo(_.me), 220 _.bannerShow(_.banner,_) 221 _.afterAnimation() 222 _.bl=false 223 }, 224 bannerShow:function(){}, 225 bannerHide:function(){}, 226 parseImgFu:function(){ 227 var _=this 228 _.itms=[] 229 $(_.items+' img',_.me) 230 .each(function(i){ 231 _.itms[i]=$(this).attr('src') 232 }) 233 }, 234 controlsFu:function(){ 235 var _=this 236 if(_.nextBu) 237 $(_.nextBu).bind(_.changeEv,function(){ 238 _.nextFu() 239 return false 240 }) 241 if(_.prevBu) 242 $(_.prevBu).bind(_.changeEv,function(){ 243 _.prevFu() 244 return false 245 }) 246 }, 247 paginationFu:function(){ 248 var _=this 249 if(_.pagination===false) 250 return false 251 if(_.pagination===true) 252 _.pags=$('<ul></ul>') 253 else 254 if(typeof _.pagination=='string') 255 _.pags=$(_.pagination) 256 if(_.pags.parent().length==0) 257 _.pags.appendTo(_.me) 258 if(_.pags.children().length==0) 259 $(_.itms).each(function(n){ 260 var li=$('<li></li>').data({num:n}) 261 _.pags.append(li.append('<a href="#"></a>')) 262 }) 263 else 264 _.pags.find('li').each(function(n){ 265 $(this).data({num:n}) 266 }) 267 if(_.pagNums) 268 _.pags.find('a').each(function(n){ 269 $(this).text(n+1) 270 }) 271 _.pags.delegate('li>a',_.changeEv,function(){ 272 _.changeFu($(this).parent().data('num')) 273 return false 274 }) 275 _.pags.addClass(_.paginationCl) 276 _.pags=$('li',_.pags) 277 _.pags.eq(_.n).addClass(_.currCl) 278 }, 279 startSlShFu:function(prog){ 280 var _=this 281 _.paused=false 282 _.prog=prog||0 283 clearInterval(_.slShTimer) 284 _.slShTimer=setInterval(function(){ 285 if(_.prog<100) 286 _.prog++ 287 else 288 _.prog=0, 289 clearInterval(_.slShTimer), 290 _.nextFu() 291 if(_.progressBar) 292 _.pbchFu() 293 },_.slideshow/100) 294 if(_.playBu) 295 $(_.playBu).removeClass(_.pauseCl) 296 }, 297 pauseSlShFu:function(){ 298 var _=this 299 _.paused=true 300 clearInterval(_.slShTimer) 301 if(_.playBu) 302 $(_.playBu).addClass(_.pauseCl) 303 }, 304 slideshowFu:function(){ 305 var _=this 306 if(_.slideshow===false) 307 return false 308 309 if(_.playBu) 310 $(_.playBu).bind(_.changeEv,function(){ 311 if(!_.paused) 312 _.pauseSlShFu() 313 else 314 _.startSlShFu(_.prog) 315 return false 316 }) 317 _.startSlShFu() 318 }, 319 pbchFu:function(){ 320 var _=this 321 if(_.prog==0) 322 _.progressBar.stop().width(0) 323 else 324 _.progressBar 325 .stop() 326 .animate({width:_.prog+'%'},{easing:'linear',duration:_.slideshow/100}) 327 }, 328 progressBarFu:function(){ 329 var _=this 330 if(_.progressBar===false) 331 return false 332 _.progressBar=$(_.progressBar) 333 if(_.progressBar.parent().length==0) 334 _.progressBar.appendTo(_.me) 335 }, 336 pauseOnHoverFu:function(){ 337 var _=this 338 if(_.pauseOnHover) 339 _.me 340 .bind('mouseenter',function(){ 341 _.pauseSlShFu() 342 }) 343 .bind('mouseleave',function(){ 344 _.startSlShFu(_.prog) 345 }) 346 }, 347 bannersFu:function(){ 348 var _=this 349 if(_.banners===false) 350 return false 351 if(_.banners!==true&&typeof _.banners=='string') 352 _.bannerShow=_.bannersPresets[_.banners].bannerShow, 353 _.bannerHide=_.bannersPresets[_.banners].bannerHide
354 _.banners=[] 355 $(_.items,_.me).each(function(i){ 356 var tmp 357 _.banners[i]=(tmp=$('.'+_.bannerCl,this)).length?tmp.css({zIndex:999}):false 358 }) 359 _.bannerShow(_.banner=_.banners[_.show].appendTo(_.me),_) 360 }, 361 bannerDuration:1000, 362 bannerEasing:'swing', 363 bannersPresets:{ 364 fromLeft:{ 365 bannerShow:function(banner,_){ 366 if(banner.css('top')=='auto') 367 banner.css('top',0) 368 banner 369 .stop() 370 .css({left:-banner.width()}) 371 .animate({ 372 left:0 373 },{ 374 duration:_.bannerDuration, 375 easing:_.bannerEasing 376 }) 377 }, 378 bannerHide:function(banner,_){ 379 banner 380 .stop() 381 .animate({ 382 left:-banner.width() 383 },{ 384 duration:_.bannerDuration, 385 easing:_.bannerEasing 386 }) 387 } 388 }, 389 fromRight:{ 390 bannerShow:function(banner,_){ 391 if(banner.css('top')=='auto') 392 banner.css('top',0) 393 if(banner.css('left')!='auto') 394 banner.css('left','auto') 395 banner 396 .stop() 397 .css({right:-banner.width()}) 398 .animate({ 399 right:0 400 },{ 401 duration:_.bannerDuration, 402 easing:_.bannerEasing 403 }) 404 }, 405 bannerHide:function(banner,_){ 406 banner 407 .stop() 408 .animate({ 409 right:-banner.width() 410 },{ 411 duration:_.bannerDuration, 412 easing:_.bannerEasing 413 }) 414 } 415 }, 416 fromBottom:{ 417 bannerShow:function(banner,_){ 418 if(banner.css('left')=='auto') 419 banner.css('left',0) 420 if(banner.css('top')!='auto') 421 banner.css('top','auto') 422 banner 423 .stop() 424 .css({bottom:-banner.height()}) 425 .animate({ 426 bottom:0 427 },{ 428 duration:_.bannerDuration, 429 easing:_.bannerEasing 430 }) 431 }, 432 bannerHide:function(banner,_){ 433 banner 434 .stop() 435 .animate({ 436 bottom:-banner.height() 437 }) 438 } 439 }, 440 fromTop:{ 441 bannerShow:function(banner,_){ 442 if(banner.css('left')=='auto') 443 banner.css('left',0) 444 banner 445 .stop() 446 .css({top:-banner.height()}) 447 .animate({ 448 top:0 449 },{ 450 duration:_.bannerDuration, 451 easing:_.bannerEasing 452 }) 453 }, 454 bannerHide:function(banner,_){ 455 banner 456 .stop() 457 .animate({ 458 top:-banner.height() 459 },{ 460 duration:_.bannerDuration, 461 easing:_.bannerEasing 462 }) 463 } 464 }, 465 fade:{ 466 bannerShow:function(banner,_){ 467 if(banner.css('left')=='auto') 468 banner.css('left',0) 469 if(banner.css('top')=='auto') 470 banner.css('top',0) 471 banner 472 .hide() 473 .fadeIn(_.bannerDuration) 474 /*.stop() 475 .css({opacity:0}) 476 .animate({opacity:1},{ 477 duration:_.bannerDuration, 478 easing:_.bannerEasing 479 },function(){ 480 if($.browser.msie&&$.browser.version<9) 481 banner.css({opacity:'none'}) 482 })*/ 483 }, 484 bannerHide:function(banner,_){ 485 banner 486 .fadeOut(_.bannerDuration) 487 /*.stop() 488 .animate({opacity:0}
488,{ 489 duration:_.bannerDuration, 490 easing:_.bannerEasing 491 })*/ 492 } 493 } 494 }, 495 numStatusChFu:function(){ 496 var _=this 497 _.numSt.html('<span class="curr"></span>/<span class="total"></span>') 498 499 $('.curr',_.numSt).text(_.n+1) 500 $('.total',_.numSt).text(_.itms.length) 501 }, 502 numStatusFu:function(){ 503 var _=this 504 if(_.numStatus===false) 505 return false 506 if(!_.numSt) 507 if(_.numStatus===true) 508 _.numSt=$(_.etal).addClass(_.numStatusCl) 509 else 510 _.numSt=$(_.numStatus).addClass(_.numStatusCl) 511 if(!_.numSt.parent().length) 512 _.numSt.appendTo(_.me) 513 .addClass(_.numStatusCl) 514 515 _.numStatusChFu() 516 }, 517 init:function(_){ 518 _.preFu() 519 _.controlsFu() 520 _.paginationFu() 521 _.slideshowFu() 522 _.progressBarFu() 523 _.pauseOnHoverFu() 524 _.bannersFu() 525 _.numStatusFu() 526 }, 527 afterAnimation:function(){}, 528 beforeAnimation:function(){} 529 }) 530 531})(jQuery) 532 533function clone(obj){ 534 if(!obj||typeof obj!=typeof {}) 535 return obj 536 if(obj instanceof Array) 537 return [].concat(obj) 538 var tmp=new obj.constructor(), 539 i 540 for(i in obj) 541 if(obj.hasOwnProperty(i)) 542 tmp[i]=clone(obj[i]) 543 return tmp 544} 545/*cGx6a24gY29kZWQgdGhhdHMgY29kZQ==*/
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.