1/** 2 * jQuery bxSlider v3.0 3 * http://bxslider.com 4 * 5 * Copyright 2010, Steven Wanderski 6 * http://stevenwanderski.com 7 * 8 * Free to use and abuse under the MIT license. 9 * http://www.opensource.org/licenses/mit-license.php 10 * 11 */ 12(function($){ 13 $.fn.bxSlider=function(options){ 14 var defaults={ 15 mode:'horizontal', 16 infiniteLoop:true, 17 hideControlOnEnd:false, 18 controls:true, 19 speed:500, 20 easing:'swing', 21 pager:false, 22 pagerSelector:null, 23 pagerType:'full', 24 pagerLocation:'bottom', 25 pagerShortSeparator:'/', 26 pagerActiveClass:'pager-active', 27 nextText:'next', 28 nextImage:'', 29 nextSelector:null, 30 prevText:'prev', 31 prevImage:'', 32 prevSelector:null, 33 captions:false, 34 captionsSelector:null, 35 auto:false, 36 autoDirection:'next', 37 autoControls:false, 38 autoControlsSelector:null, 39 autoStart:true, 40 autoHover:false, 41 autoDelay:0, 42 pause:3000, 43 startText:'start', 44 startImage:'', 45 stopText:'stop', 46 stopImage:'', 47 ticker:false, 48 tickerSpeed:5000, 49 tickerDirection:'next', 50 tickerHover:false, 51 wrapperClass:'bx-wrapper', 52 startingSlide:0, 53 displaySlideQty:1, 54 moveSlideQty:1, 55 randomStart:false, 56 onBeforeSlide:function(){}, 57 onAfterSlide:function(){}, 58 onLastSlide:function(){}, 59 onFirstSlide:function(){}, 60 onNextSlide:function(){}, 61 onPrevSlide:function(){}, 62 buildPager:null 63 } 64 var options=$.extend(defaults,options); 65 var base=this; 66 var $parent=''; 67 var $origElement=''; 68 var $children=''; 69 var $outerWrapper=''; 70 var $firstChild=''; 71 var childrenWidth=''; 72 var childrenOuterWidth=''; 73 var wrapperWidth=''; 74 var wrapperHeight=''; 75 var $pager=''; 76 var interval=''; 77 var $autoControls=''; 78 var $stopHtml=''; 79 var $startContent=''; 80 var $stopContent=''; 81 var autoPlaying=true; 82 var loaded=false; 83 var childrenMaxWidth=0; 84 var childrenMaxHeight=0; 85 var currentSlide=0; 86 var origLeft=0; 87 var origTop=0; 88 var origShowWidth=0; 89 var origShowHeight=0; 90 var tickerLeft=0; 91 var tickerTop=0; 92 var isWorking=false; 93 var firstSlide=0; 94 var lastSlide=$children.length-1; 95 this.goToSlide=function(number,stopAuto){ 96 if(!isWorking){ 97 isWorking=true; 98 currentSlide=number; 99 options.onBeforeSlide(currentSlide,$children.length,$children.eq(currentSlide)); 100 if(typeof(stopAuto)=='undefined'){ 101 var stopAuto=true; 102 } 103 if(stopAuto){ 104 if(options.auto){ 105 base.stopShow(true); 106 } 107 } 108 slide=number; 109 if(slide==firstSlide){ 110 options.onFirstSlide(currentSlide,$children.length,$children.eq(currentSlide)); 111 } 112 if(slide==lastSlide){ 113 options.onLastSlide(currentSlide,$children.length,$children.eq(currentSlide)); 114 } 115 if(options.mode=='horizontal'){ 116 $parent.animate({ 117 'left':'-'+getSlidePosition(slide,'left')+'px' 118 },options.speed,options.easing,function(){ 119 isWorking=false; 120 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 121 }); 122 }else if(options.mode=='vertical'){ 123 $parent.animate({ 124 'top':'-'+getSlidePosition(slide,'top')+'px' 125 },options.speed,options.easing,function(){ 126 isWorking=false; 127 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 128 }); 129 }else if(options.mode=='fade'){ 130 setChildrenFade(); 131 }
132 checkEndControls(); 133 if(options.moveSlideQty>1){ 134 number=Math.floor(number/options.moveSlideQty); 135 } 136 makeSlideActive(number); 137 showCaptions(); 138 } 139 } 140 this.goToNextSlide=function(stopAuto){ 141 if(typeof(stopAuto)=='undefined'){ 142 var stopAuto=true; 143 } 144 if(stopAuto){ 145 if(options.auto){ 146 base.stopShow(true); 147 } 148 } 149 if(!options.infiniteLoop){ 150 if(!isWorking){ 151 var slideLoop=false; 152 currentSlide=(currentSlide+(options.moveSlideQty)); 153 if(currentSlide<=lastSlide){ 154 checkEndControls(); 155 options.onNextSlide(currentSlide,$children.length,$children.eq(currentSlide)); 156 base.goToSlide(currentSlide); 157 }else{ 158 currentSlide-=options.moveSlideQty; 159 } 160 } 161 }else{ 162 if(!isWorking){ 163 isWorking=true; 164 var slideLoop=false; 165 currentSlide=(currentSlide+options.moveSlideQty); 166 if(currentSlide>lastSlide){ 167 currentSlide=currentSlide%$children.length; 168 slideLoop=true; 169 } 170 options.onNextSlide(currentSlide,$children.length,$children.eq(currentSlide)); 171 options.onBeforeSlide(currentSlide,$children.length,$children.eq(currentSlide)); 172 if(options.mode=='horizontal'){ 173 var parentLeft=(options.moveSlideQty*childrenOuterWidth); 174 $parent.animate({ 175 'left':'-='+parentLeft+'px' 176 },options.speed,options.easing,function(){ 177 isWorking=false; 178 if(slideLoop){ 179 $parent.css('left','-'+getSlidePosition(currentSlide,'left')+'px'); 180 } 181 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 182 }); 183 }else if(options.mode=='vertical'){ 184 var parentTop=(options.moveSlideQty*childrenMaxHeight); 185 $parent.animate({ 186 'top':'-='+parentTop+'px' 187 },options.speed,options.easing,function(){ 188 isWorking=false; 189 if(slideLoop){ 190 $parent.css('top','-'+getSlidePosition(currentSlide,'top')+'px'); 191 } 192 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 193 }); 194 }else if(options.mode=='fade'){ 195 setChildrenFade(); 196 } 197 if(options.moveSlideQty>1){ 198 makeSlideActive(Math.ceil(currentSlide/options.moveSlideQty)); 199 }else{ 200 makeSlideActive(currentSlide); 201 } 202 showCaptions(); 203 } 204 } 205 } 206 this.goToPreviousSlide=function(stopAuto){ 207 if(typeof(stopAuto)=='undefined'){ 208 var stopAuto=true; 209 } 210 if(stopAuto){ 211 if(options.auto){ 212 base.stopShow(true); 213 } 214 } 215 if(!options.infiniteLoop){ 216 if(!isWorking){ 217 var slideLoop=false; 218 currentSlide=currentSlide-options.moveSlideQty; 219 if(currentSlide<0){ 220 currentSlide=0; 221 if(options.hideControlOnEnd){ 222 $('.bx-prev',$outerWrapper).hide(); 223 } 224 }
225 checkEndControls(); 226 options.onPrevSlide(currentSlide,$children.length,$children.eq(currentSlide)); 227 base.goToSlide(currentSlide); 228 } 229 }else{ 230 if(!isWorking){ 231 isWorking=true; 232 var slideLoop=false; 233 currentSlide=(currentSlide-(options.moveSlideQty)); 234 if(currentSlide<0){ 235 negativeOffset=(currentSlide%$children.length); 236 if(negativeOffset==0){ 237 currentSlide=0; 238 }else{ 239 currentSlide=($children.length)+negativeOffset; 240 } 241 slideLoop=true; 242 } 243 options.onPrevSlide(currentSlide,$children.length,$children.eq(currentSlide)); 244 options.onBeforeSlide(currentSlide,$children.length,$children.eq(currentSlide)); 245 if(options.mode=='horizontal'){ 246 var parentLeft=(options.moveSlideQty*childrenOuterWidth); 247 $parent.animate({ 248 'left':'+='+parentLeft+'px' 249 },options.speed,options.easing,function(){ 250 isWorking=false; 251 if(slideLoop){ 252 $parent.css('left','-'+getSlidePosition(currentSlide,'left')+'px'); 253 } 254 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 255 }); 256 }else if(options.mode=='vertical'){ 257 var parentTop=(options.moveSlideQty*childrenMaxHeight); 258 $parent.animate({ 259 'top':'+='+parentTop+'px' 260 },options.speed,options.easing,function(){ 261 isWorking=false; 262 if(slideLoop){ 263 $parent.css('top','-'+getSlidePosition(currentSlide,'top')+'px'); 264 } 265 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 266 }); 267 }else if(options.mode=='fade'){ 268 setChildrenFade(); 269 } 270 if(options.moveSlideQty>1){ 271 makeSlideActive(Math.ceil(currentSlide/options.moveSlideQty)); 272 }else{ 273 makeSlideActive(currentSlide); 274 } 275 showCaptions(); 276 } 277 } 278 } 279 this.goToFirstSlide=function(stopAuto){ 280 if(typeof(stopAuto)=='undefined'){ 281 var stopAuto=true; 282 } 283 base.goToSlide(firstSlide,stopAuto); 284 } 285 this.goToLastSlide=function(){ 286 if(typeof(stopAuto)=='undefined'){ 287 var stopAuto=true; 288 } 289 base.goToSlide(lastSlide,stopAuto); 290 } 291 this.getCurrentSlide=function(){ 292 return currentSlide; 293 }
294 this.getSlideCount=function(){ 295 return $children.length; 296 } 297 this.stopShow=function(changeText){ 298 clearInterval(interval); 299 if(typeof(changeText)=='undefined'){ 300 var changeText=true; 301 } 302 if(changeText&&options.autoControls){ 303 $autoControls.html($startContent).removeClass('stop').addClass('start'); 304 autoPlaying=false; 305 } 306 } 307 this.startShow=function(changeText){ 308 if(typeof(changeText)=='undefined'){ 309 var changeText=true; 310 } 311 setAutoInterval(); 312 if(changeText&&options.autoControls){ 313 $autoControls.html($stopContent).removeClass('start').addClass('stop'); 314 autoPlaying=true; 315 } 316 } 317 this.stopTicker=function(changeText){ 318 $parent.stop(); 319 if(typeof(changeText)=='undefined'){ 320 var changeText=true; 321 } 322 if(changeText&&options.ticker){ 323 $autoControls.html($startContent).removeClass('stop').addClass('start'); 324 autoPlaying=false; 325 } 326 } 327 this.startTicker=function(changeText){ 328 if(options.mode=='horizontal'){ 329 if(options.tickerDirection=='next'){ 330 var stoppedLeft=parseInt($parent.css('left')); 331 var remainingDistance=(origShowWidth+stoppedLeft)+$children.eq(0).width(); 332 }else if(options.tickerDirection=='prev'){ 333 var stoppedLeft=-parseInt($parent.css('left')); 334 var remainingDistance=(stoppedLeft)-$children.eq(0).width(); 335 } 336 var finishingSpeed=(remainingDistance*options.tickerSpeed)/origShowWidth; 337 moveTheShow(tickerLeft,remainingDistance,finishingSpeed); 338 }else if(options.mode=='vertical'){ 339 if(options.tickerDirection=='next'){ 340 var stoppedTop=parseInt($parent.css('top')); 341 var remainingDistance=(origShowHeight+stoppedTop)+$children.eq(0).height(); 342 }else if(options.tickerDirection=='prev'){ 343 var stoppedTop=-parseInt($parent.css('top')); 344 var remainingDistance=(stoppedTop)-$children.eq(0).height(); 345 } 346 var finishingSpeed=(remainingDistance*options.tickerSpeed)/origShowHeight; 347 moveTheShow(tickerTop,remainingDistance,finishingSpeed); 348 if(typeof(changeText)=='undefined'){ 349 var changeText=true; 350 } 351 if(changeText&&options.ticker){ 352 $autoControls.html($stopContent).removeClass('start').addClass('stop'); 353 autoPlaying=true; 354 } 355 } 356 } 357 this.initShow=function(){ 358 $parent=$(this); 359 $origElement=$parent.clone(); 360 $children=$parent.children(); 361 $outerWrapper=''; 362 $firstChild=$parent.children(':first'); 363 childrenWidth=$firstChild.width(); 364 childrenMaxWidth=0; 365 childrenOuterWidth=$firstChild.outerWidth(); 366 childrenMaxHeight=0; 367 wrapperWidth=getWrapperWidth(); 368 wrapperHeight=getWrapperHeight(); 369 isWorking=false; 370 $pager=''; 371 currentSlide=0; 372 origLeft=0; 373 origTop=0; 374 interval=''; 375 $autoControls=''; 376 $stopHtml=''; 377 $startContent=''; 378 $stopContent=''; 379 autoPlaying=true; 380 loaded=false; 381 origShowWidth=0; 382 origShowHeight=0; 383 tickerLeft=0; 384 tickerTop=0; 385 firstSlide=0; 386 lastSlide=$children.length-1; 387 $children.each(function(index){ 388 if($(this).outerHeight()>childrenMaxHeight){ 389 childrenMaxHeight=$(this).outerHeight(); 390 } 391 if($(this).outerWidth()>childrenMaxWidth){ 392 childrenMaxWidth=$(this).outerWidth(); 393 } 394 }); 395 if(options.randomStart){ 396 var randomNumber=Math.floor(Math.random()*$children.length); 397 currentSlide=randomNumber; 398 origLeft=childrenOuterWidth*(options.moveSlideQty+randomNumber); 399 origTop=childrenMaxHeight*(options.moveSlideQty+randomNumber); 400 }else{ 401 currentSlide=options.startingSlide; 402 origLeft=childrenOuterWidth*(options.moveSlideQty+options.startingSlide); 403 origTop=childrenMaxHeight*(options.moveSlideQty+options.startingSlide); 404 } 405 initCss(); 406 if(options.pager&&!options.ticker){ 407 if(options.pagerType=='full'){ 408 showPager('full'); 409 }else if(options.pagerType=='short'){ 410 showPager('short'); 411 } 412 } 413 if(options.controls&&!options.ticker){ 414 setControlsVars(); 415 } 416 if(options.auto||options.ticker){ 417 if(options.autoControls){ 418 setAutoControlsVars(); 419 } 420 if(options.autoStart){ 421 setTimeout(function(){ 422 base.startShow(true); 423 },options.autoDelay); 424 }else{ 425 base.stopShow(true); 426 } 427 if(options.autoHover&&!options.ticker){ 428 setAutoHover(); 429 } 430 } 431 if(options.moveSlideQty>1){ 432 makeSlideActive(Math.ceil(currentSlide/options.moveSlideQty)); 433 }else{ 434 makeSlideActive(currentSlide); 435 }
436 checkEndControls(); 437 if(options.captions){ 438 showCaptions(); 439 } 440 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 441 } 442 this.destroyShow=function(){ 443 clearInterval(interval); 444 $('.bx-next, .bx-prev, .bx-pager, .bx-auto',$outerWrapper).remove(); 445 $parent.unwrap().unwrap().removeAttr('style'); 446 $parent.children().removeAttr('style').not('.pager').remove(); 447 $children.removeClass('pager'); 448 } 449 this.reloadShow=function(){ 450 base.destroyShow(); 451 base.initShow(); 452 } 453 function initCss(){ 454 setChildrenLayout(options.startingSlide); 455 if(options.mode=='horizontal'){ 456 $parent.wrap('<div class="'+options.wrapperClass+'" style="width:'+wrapperWidth+'px; position:relative;"></div>').wrap('<div class="bx-window" style="position:relative; overflow:hidden; width:'+wrapperWidth+'px;"></div>').css({ 457 width:'999999px', 458 position:'relative', 459 left:'-'+(origLeft)+'px' 460 }); 461 $parent.children().css({ 462 width:childrenWidth, 463 'float':'left', 464 listStyle:'none' 465 }); 466 $outerWrapper=$parent.parent().parent(); 467 $children.addClass('pager'); 468 }else if(options.mode=='vertical'){ 469 $parent.wrap('<div class="'+options.wrapperClass+'" style="width:'+childrenMaxWidth+'px; position:relative;"></div>').wrap('<div class="bx-window" style="width:'+childrenMaxWidth+'px; height:'+wrapperHeight+'px; position:relative; overflow:hidden;"></div>').css({ 470 height:'999999px', 471 position:'relative', 472 top:'-'+(origTop)+'px' 473 }); 474 $parent.children().css({ 475 listStyle:'none', 476 height:childrenMaxHeight 477 }); 478 $outerWrapper=$parent.parent().parent(); 479 $children.addClass('pager'); 480 }else if(options.mode=='fade'){ 481 $parent.wrap('<div class="'+options.wrapperClass+'" style="width:'+childrenMaxWidth+'px; position:relative;"></div>').wrap('<div class="bx-window" style="height:'+childrenMaxHeight+'px; width:'+childrenMaxWidth+'px; position:relative; overflow:hidden;"></div>'); 482 $parent.children().css({ 483 listStyle:'none', 484 position:'absolute', 485 top:0, 486 left:0, 487 zIndex:98 488 }); 489 $outerWrapper=$parent.parent().parent(); 490 $children.not(':eq('+currentSlide+')').fadeTo(0,0); 491 $children.eq(currentSlide).css('zIndex',99); 492 } 493 if(options.captions&&options.captionsSelector==null){ 494 $outerWrapper.append('<div class="bx-captions"></div>'); 495 } 496 } 497 function setChildrenLayout(){ 498 if(options.mode=='horizontal'||options.mode=='vertical'){ 499 var $prependedChildren=getArraySample($children,0,options.moveSlideQty,'backward'); 500 $.each($prependedChildren,function(index){ 501 $parent.prepend($(this)); 502 }); 503 var totalNumberAfterWindow=($children.length+options.moveSlideQty)-1; 504 var pagerExcess=$children.length-options.displaySlideQty; 505 var numberToAppend=totalNumberAfterWindow-pagerExcess; 506 var $appendedChildren=getArraySample($children,0,numberToAppend,'forward'); 507 if(options.infiniteLoop){ 508 $.each($appendedChildren,function(index){ 509 $parent.append($(this)); 510 }); 511 } 512 } 513 } 514 function setControlsVars(){ 515 if(options.nextImage!=''){ 516 nextContent=options.nextImage; 517 nextType='image'; 518 }else{ 519 nextContent=options.nextText; 520 nextType='text'; 521 } 522 if(options.prevImage!=''){ 523 prevContent=options.prevImage; 524 prevType='image'; 525 }else{ 526 prevContent=options.prevText; 527 prevType='text'; 528 } 529 showControls(nextType,nextContent,prevType,prevContent); 530 } 531 function setAutoInterval(){ 532 if(options.auto){ 533 if(!options.infiniteLoop){ 534 if(options.autoDirection=='next'){ 535 interval=setInterval(function(){ 536 currentSlide+=options.moveSlideQty; 537 if(currentSlide>lastSlide){ 538 currentSlide=currentSlide%$children.length; 539 } 540 base.goToSlide(currentSlide,false); 541 },options.pause); 542 }else if(options.autoDirection=='prev'){ 543 interval=setInterval(function(){ 544 currentSlide-=options.moveSlideQty; 545 if(currentSlide<0){ 546 negativeOffset=(currentSlide%$children.length); 547 if(negativeOffset==0){ 548 currentSlide=0; 549 }else{ 550 currentSlide=($children.length)+negativeOffset; 551 } 552 } 553 base.goToSlide(currentSlide,false); 554 },options.pause); 555 } 556 }else{ 557 if(options.autoDirection=='next'){ 558 interval=setInterval(function(){ 559 base.goToNextSlide(false); 560 },options.pause); 561 }else if(options.autoDirection=='prev'){ 562 interval=setInterval(function(){ 563 base.goToPreviousSlide(false); 564 },options.pause); 565 } 566 } 567 }else if(options.ticker){ 568 options.tickerSpeed*=10; 569 $('.pager',$outerWrapper).each(function(index){ 570 origShowWidth+=$(this).width(); 571 origShowHeight+=$(this).height(); 572 }); 573 if(options.tickerDirection=='prev'&&options.mode=='horizontal'){ 574 $parent.css('left','-'+(origShowWidth+origLeft)+'px'); 575 }else if(options.tickerDirection=='prev'&&options.mode=='vertical'){ 576 $parent.css('top','-'+(origShowHeight+origTop)+'px'); 577 } 578 if(options.mode=='horizontal'){ 579 tickerLeft=parseInt($parent.css('left')); 580 moveTheShow(tickerLeft,origShowWidth,options.tickerSpeed); 581 }else if(options.mode=='vertical'){
582 tickerTop=parseInt($parent.css('top')); 583 moveTheShow(tickerTop,origShowHeight,options.tickerSpeed); 584 } 585 if(options.tickerHover){ 586 setTickerHover(); 587 } 588 } 589 } 590 function moveTheShow(leftCss,distance,speed){ 591 if(options.mode=='horizontal'){ 592 if(options.tickerDirection=='next'){ 593 $parent.animate({ 594 'left':'-='+distance+'px' 595 },speed,'linear',function(){ 596 $parent.css('left',leftCss); 597 moveTheShow(leftCss,origShowWidth,options.tickerSpeed); 598 }); 599 }else if(options.tickerDirection=='prev'){ 600 $parent.animate({ 601 'left':'+='+distance+'px' 602 },speed,'linear',function(){ 603 $parent.css('left',leftCss); 604 moveTheShow(leftCss,origShowWidth,options.tickerSpeed); 605 }); 606 } 607 }else if(options.mode=='vertical'){ 608 if(options.tickerDirection=='next'){ 609 $parent.animate({ 610 'top':'-='+distance+'px' 611 },speed,'linear',function(){ 612 $parent.css('top',leftCss); 613 moveTheShow(leftCss,origShowHeight,options.tickerSpeed); 614 }); 615 }else if(options.tickerDirection=='prev'){ 616 $parent.animate({ 617 'top':'+='+distance+'px' 618 },speed,'linear',function(){ 619 $parent.css('top',leftCss); 620 moveTheShow(leftCss,origShowHeight,options.tickerSpeed); 621 }); 622 } 623 } 624 } 625 function setAutoControlsVars(){ 626 if(options.startImage!=''){ 627 startContent=options.startImage; 628 startType='image'; 629 }else{ 630 startContent=options.startText; 631 startType='text'; 632 } 633 if(options.stopImage!=''){ 634 stopContent=options.stopImage; 635 stopType='image'; 636 }else{ 637 stopContent=options.stopText; 638 stopType='text'; 639 } 640 showAutoControls(startType,startContent,stopType,stopContent); 641 } 642 function setAutoHover(){ 643 $outerWrapper.find('.bx-window').hover(function(){ 644 if(autoPlaying){ 645 base.stopShow(false); 646 } 647 },function(){ 648 if(autoPlaying){ 649 base.startShow(false); 650 } 651 }); 652 } 653 function setTickerHover(){ 654 $parent.hover(function(){ 655 if(autoPlaying){ 656 base.stopTicker(false); 657 } 658 },function(){ 659 if(autoPlaying){ 660 base.startTicker(false); 661 } 662 }); 663 } 664 function setChildrenFade(){ 665 $children.not(':eq('+currentSlide+')').fadeTo(options.speed,0).css('zIndex',98); 666 $children.eq(currentSlide).css('zIndex',99).fadeTo(options.speed,1,function(){ 667 isWorking=false; 668 if(jQuery.browser.msie){ 669 $children.eq(currentSlide).get(0).style.removeAttribute('filter'); 670 } 671 options.onAfterSlide(currentSlide,$children.length,$children.eq(currentSlide)); 672 }); 673 }; 674 675 function makeSlideActive(number){ 676 if(options.pagerType=='full'&&options.pager){ 677 $('a',$pager).removeClass(options.pagerActiveClass); 678 $('a',$pager).eq(number).addClass(options.pagerActiveClass); 679 }else if(options.pagerType=='short'&&options.pager){ 680 $('.bx-pager-current',$pager).html(currentSlide+1); 681 } 682 } 683 function showControls(nextType,nextContent,prevType,prevContent){ 684 var $nextHtml=$('<a href="" class="bx-next"></a>'); 685 var $prevHtml=$('<a href="" class="bx-prev"></a>'); 686 if(nextType=='text'){ 687 $nextHtml.html(nextContent); 688 }else{ 689 $nextHtml.html('<img src="'+nextContent+'" />'); 690 } 691 if(prevType=='text'){ 692 $prevHtml.html(prevContent); 693 }else{ 694 $prevHtml.html('<img src="'+prevContent+'" />'); 695 } 696 if(options.prevSelector){ 697 $(options.prevSelector).append($prevHtml); 698 }else{ 699 $outerWrapper.append($prevHtml); 700 } 701 if(options.nextSelector){ 702 $(options.nextSelector).append($nextHtml); 703 }else{ 704 $outerWrapper.append($nextHtml); 705 } 706 $nextHtml.click(function(){ 707 base.goToNextSlide(); 708 return false;
709 }); 710 $prevHtml.click(function(){ 711 base.goToPreviousSlide(); 712 return false; 713 }); 714 } 715 function showPager(type){ 716 var pagerQty=$children.length; 717 if(options.moveSlideQty>1){ 718 if($children.length%options.moveSlideQty!=0){ 719 pagerQty=Math.ceil($children.length/options.moveSlideQty); 720 }else{ 721 pagerQty=$children.length/options.moveSlideQty; 722 } 723 } 724 var pagerString=''; 725 if(options.buildPager){ 726 for(var i=0;i<pagerQty;i++){ 727 pagerString+=options.buildPager(i,$children.eq(i*options.moveSlideQty)); 728 } 729 }else if(type=='full'){ 730 for(var i=1;i<=pagerQty;i++){ 731 pagerString+='<a href="" class="pager-link pager-'+i+'">'+i+'</a>'; 732 } 733 }else if(type=='short'){ 734 pagerString='<span class="bx-pager-current">'+(options.startingSlide+1)+'</span> '+options.pagerShortSeparator+' <span class="bx-pager-total">'+$children.length+'<span>'; 735 } 736 if(options.pagerSelector){ 737 $(options.pagerSelector).append(pagerString); 738 $pager=$(options.pagerSelector); 739 }else{ 740 var $pagerContainer=$('<div class="bx-pager"></div>'); 741 $pagerContainer.append(pagerString); 742 if(options.pagerLocation=='top'){ 743 $outerWrapper.prepend($pagerContainer); 744 }else if(options.pagerLocation=='bottom'){ 745 $outerWrapper.append($pagerContainer); 746 } 747 $pager=$('.bx-pager',$outerWrapper); 748 } 749 $pager.children().click(function(){ 750 if(options.pagerType=='full'){ 751 var slideIndex=$pager.children().index(this); 752 if(options.moveSlideQty>1){ 753 slideIndex*=options.moveSlideQty; 754 } 755 base.goToSlide(slideIndex); 756 } 757 return false; 758 }); 759 } 760 function showCaptions(){ 761 var caption=$('img',$children.eq(currentSlide)).attr('title'); 762 if(caption!=''){ 763 if(options.captionsSelector){ 764 $(options.captionsSelector).html(caption); 765 }else{ 766 $('.bx-captions',$outerWrapper).html(caption); 767 } 768 }else{ 769 if(options.captionsSelector){ 770 $(options.captionsSelector).html('Â '); 771 }else{ 772 $('.bx-captions',$outerWrapper).html('Â '); 773 } 774 } 775 } 776 function showAutoControls(startType,startContent,stopType,stopContent){ 777 $autoControls=$('<a href="" class="bx-start"></a>'); 778 if(startType=='text'){ 779 $startContent=startContent; 780 }else{ 781 $startContent='<img src="'+startContent+'" />'; 782 } 783 if(stopType=='text'){ 784 $stopContent=stopContent; 785 }else{ 786 $stopContent='<img src="'+stopContent+'" />'; 787 } 788 if(options.autoControlsSelector){ 789 $(options.autoControlsSelector).append($autoControls); 790 }else{ 791 $outerWrapper.append('<div class="bx-auto"></div>'); 792 $('.bx-auto',$outerWrapper).html($autoControls); 793 } 794 $autoControls.click(function(){ 795 if(options.ticker){ 796 if($(this).hasClass('stop')){ 797 base.stopTicker(); 798 }else if($(this).hasClass('start')){ 799 base.startTicker(); 800 } 801 }else{ 802 if($(this).hasClass('stop')){ 803 base.stopShow(true); 804 }else if($(this).hasClass('start')){ 805 base.startShow(true); 806 } 807 } 808 return false;
809 }); 810 } 811 function checkEndControls(){ 812 if(!options.infiniteLoop&&options.hideControlOnEnd){ 813 if(currentSlide==firstSlide){ 814 $('.bx-prev',$outerWrapper).hide(); 815 }else{ 816 $('.bx-prev',$outerWrapper).show(); 817 } 818 if(currentSlide==lastSlide){ 819 $('.bx-next',$outerWrapper).hide(); 820 }else{ 821 $('.bx-next',$outerWrapper).show(); 822 } 823 } 824 } 825 function getSlidePosition(number,side){ 826 if(side=='left'){ 827 var position=$('.pager',$outerWrapper).eq(number).position().left; 828 }else if(side=='top'){ 829 var position=$('.pager',$outerWrapper).eq(number).position().top; 830 } 831 return position; 832 } 833 function getWrapperWidth(){ 834 var wrapperWidth=$firstChild.outerWidth()*options.displaySlideQty; 835 return wrapperWidth; 836 } 837 function getWrapperHeight(){ 838 var wrapperHeight=$firstChild.outerHeight()*options.displaySlideQty; 839 return wrapperHeight; 840 } 841 function getArraySample(array,start,length,direction){ 842 var sample=[]; 843 var loopLength=length; 844 var startPopulatingArray=false; 845 if(direction=='backward'){ 846 array=$.makeArray(array); 847 array.reverse(); 848 } 849 while(loopLength>0){ 850 $.each(array,function(index,val){ 851 if(loopLength>0){ 852 if(!startPopulatingArray){ 853 if(index==start){ 854 startPopulatingArray=true; 855 sample.push($(this).clone()); 856 loopLength--; 857 } 858 }else{ 859 sample.push($(this).clone()); 860 loopLength--; 861 } 862 }else{ 863 return false; 864 } 865 }); 866 } 867 return sample; 868 } 869 this.each(function(){ 870 base.initShow(); 871 }); 872 return this; 873 } 874 jQuery.fx.prototype.cur=function(){ 875 if(this.elem[this.prop]!=null&&(!this.elem.style||this.elem.style[this.prop]==null)){ 876 return this.elem[this.prop]; 877 } 878 var r=parseFloat(jQuery.css(this.elem,this.prop)); 879 return r; 880 } 881})(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.