1/** 2 * BxSlider v4.1.1 - Fully loaded, responsive content slider 3 * http://bxslider.com 4 * 5 * Copyright 2012, Steven Wanderski - http://stevenwanderski.com - http://bxcreative.com 6 * Written while drinking Belgian ales and listening to jazz 7 * 8 * Released under the WTFPL license - http://sam.zoy.org/wtfpl/ 9 */ 10!function (t) { 11 var e = {}, 12 s = { 13 mode: "horizontal", 14 slideSelector: "", 15 infiniteLoop: !0, 16 hideControlOnEnd: !1, 17 speed: 500, 18 easing: null, 19 slideMargin: 0, 20 startSlide: 0, 21 randomStart: !1, 22 captions: !1, 23 ticker: !1, 24 tickerHover: !1, 25 adaptiveHeight: !1, 26 adaptiveHeightSpeed: 500, 27 video: !1, 28 useCSS: !0, 29 preloadImages: "visible", 30 responsive: !0, 31 touchEnabled: !0, 32 swipeThreshold: 50, 33 oneToOneTouch: !0, 34 preventDefaultSwipeX: !0, 35 preventDefaultSwipeY: !1, 36 pager: !0, 37 pagerType: "full", 38 pagerShortSeparator: " / ", 39 pagerSelector: null, 40 buildPager: null, 41 pagerCustom: null, 42 controls: !0, 43 nextText: "Next", 44 prevText: "Prev", 45 nextSelector: null, 46 prevSelector: null, 47 autoControls: !1, 48 startText: "Start", 49 stopText: "Stop", 50 autoControlsCombine: !1, 51 autoControlsSelector: null, 52 auto: !1, 53 pause: 4e3, 54 autoStart: !0, 55 autoDirection: "next", 56 autoHover: !1, 57 autoDelay: 0, 58 minSlides: 1, 59 maxSlides: 1, 60 moveSlides: 0, 61 slideWidth: 0, 62 onSliderLoad: function () {}, 63 onSlideBefore: function () {}, 64 onSlideAfter: function () {}, 65 onSlideNext: function () {}, 66 onSlidePrev: function () {} 67 }; 68 t.fn.bxSlider = function (n) { 69 if (0 == this.length) 70 return this; 71 72 if (this.length > 1) 73 return this.each(function () { 74 t(this).bxSlider(n) 75 }), 76 this; 77 78 var o = {}, 79 r = this; 80 e.el = this; 81 var a = t(window).width(), 82 l = t(window).height(), 83 d = function () { 84 o.settings = t.extend({}, s, n), 85 o.settings.slideWidth = parseInt(o.settings.slideWidth), 86 o.children = r.children(o.settings.slideSelector), 87 o.children.length < o.settings.minSlides && (o.settings.minSlides = o.children.length), 88 o.children.length < o.settings.maxSlides && (o.settings.maxSlides = o.children.length), 89 o.settings.randomStart && (o.settings.startSlide = Math.floor(Math.random() * o.children.length)), 90 o.active = { 91 index: o.settings.startSlide 92 }, 93 o.carousel = o.settings.minSlides > 1 || o.settings.maxSlides > 1, 94 o.carousel && (o.settings.preloadImages = "all"), 95 o.minThreshold = o.settings.minSlides * o.settings.slideWidth + (o.settings.minSlides - 1) * o.settings.slideMargin, 96 o.maxThreshold = o.settings.maxSlides * o.settings.slideWidth + (o.settings.maxSlides - 1) * o.settings.slideMargin, 97 o.working = !1, 98 o.controls = {}, 99 o.interval = null, 100 o.animProp = "vertical" == o.settings.mode 101 ? "top" 102 : "left", 103 o.usingCSS = o.settings.useCSS && "fade" != o.settings.mode && function () { 104 var t = document.createElement("div"), 105 e = ["WebkitPerspective", "MozPerspective", "OPerspective", "msPerspective"]; 106 for (var i in e) 107 if (void 0 !== t.style[e[i]]) 108 return o.cssPrefix = e[i].replace("Perspective", "").toLowerCase(), 109 o.animProp = "-" + o.cssPrefix + "-transform", 110 !0; 111 112 113 return !1 114 }(), 115 "vertical" == o.settings.mode && (o.settings.maxSlides = o.settings.minSlides), 116 r.data("origStyle", r.attr("style")), 117 r.children(o.settings.slideSelector).each(function () { 118 t(this).data("origStyle", t(this).attr("style")) 119 }), 120 c() 121 }, 122 c = function () { 123 r.wrap('<div class="bx-wrapper"><div class="bx-viewport"></div></div>'), 124 o.viewport = r.parent(),
125 o.loader = t('<div class="bx-loading" />'), 126 o.viewport.prepend(o.loader), 127 r.css({ 128 width: "horizontal" == o.settings.mode 129 ? 100 *o.children.length + 215 + "%" 130 : "auto", 131 position: "relative" 132 }), 133 o.usingCSS && o.settings.easing 134 ? r.css("-" + o.cssPrefix + "-transition-timing-function", o.settings.easing) 135 : o.settings.easing || (o.settings.easing = "swing"), 136 f(), 137 o.viewport.css({width: "100%", overflow: "hidden", position: "relative"}), 138 o 139 .viewport 140 .parent() 141 .css({maxWidth: v()}), 142 o.settings.pager || o 143 .viewport 144 .parent() 145 .css({margin: "0 auto 0px"}), 146 o.children.css({ 147 "float": "horizontal" == o.settings.mode 148 ? "left" 149 : "none", 150 listStyle: "none", 151 position: "relative" 152 }), 153 o.children.css("width", u()), 154 "horizontal" == o.settings.mode && o.settings.slideMargin > 0 && o.children.css("marginRight", o.settings.slideMargin), 155 "vertical" == o.settings.mode && o.settings.slideMargin > 0 && o.children.css("marginBottom", o.settings.slideMargin), 156 "fade" == o.settings.mode && (o.children.css({position: "absolute", zIndex: 0, display: "none"}), o 157 .children 158 .eq(o.settings.startSlide) 159 .css({zIndex: 50, display: "block"})), 160 o.controls.el = t('<div class="bx-controls" />'), 161 o.settings.captions && P(), 162 o.active.last = o.settings.startSlide == x() - 1, 163 o.settings.video && r.fitVids(); 164 var e = o.children.eq(o.settings.startSlide); 165 "all" == o.settings.preloadImages && (e = o.children), 166 o.settings.ticker 167 ? o.settings.pager = !1 168 : (o.settings.pager && T(), o.settings.controls && C(), o.settings.auto && o.settings.autoControls && E(), (o.settings.controls || o.settings.autoControls || o.settings.pager) && o.viewport.after(o.controls.el)), 169 g(e, h) 170 }, 171 g = function (e, i) { 172 var s = e.find("img, iframe").length; 173 if (0 == s) 174 return i(), 175 void 0; 176 177 var n = 0; 178 e.find("img, iframe").each(function () { 179 t(this).is("img") && t(this).attr("src", t(this).attr("src") + "?timestamp=" + ( 180 new Date 181 ).getTime()), 182 t(this).off("load").on("load",function () { 183 setTimeout(function () { 184 ++ n == s && i() 185 }, 0) 186 }) 187 }) 188 }, 189 h = function () { 190 if (o.settings.infiniteLoop && "fade" != o.settings.mode && ! o.settings.ticker) { 191 var e = "vertical" == o.settings.mode 192 ? o.settings.minSlides 193 : o.settings.maxSlides, 194 i = o 195 .children 196 .slice(0, e) 197 .clone() 198 .addClass("bx-clone"), 199 s = o 200 .children 201 .slice(- e) 202 .clone() 203 .addClass("bx-clone"); 204 r.append(i).prepend(s) 205 } 206 o.loader.remove(), 207 S(), 208 "vertical" == o.settings.mode && (o.settings.adaptiveHeight =! 0), 209 o.viewport.height(p()), 210 r.redrawSlider(), 211 o.settings.onSliderLoad(o.active.index), 212 o.initialized = !0, 213 o.settings.responsive && t(window).bind("resize", B), 214 o.settings.auto && o.settings.autoStart && H(), 215 o.settings.ticker && L(), 216 o.settings.pager && I(o.settings.startSlide), 217 o.settings.controls && W(), 218 o.settings.touchEnabled && ! o.settings.ticker && O() 219 }, 220 p = function () { 221 var e = 0, 222 s = t(); 223 if ("vertical" == o.settings.mode || o.settings.adaptiveHeight) 224 if (o.carousel) { 225 var n = 1 == o.settings.moveSlides 226 ? o.active.index 227 : o.active.index * m(); 228 for (s = o.children.eq(n), i = 1; i <= o.settings.maxSlides - 1; i ++) 229 s = n + i >= o.children.length 230 ? s.add(o.children.eq(i - 1)) 231 : s.add(o.children.eq(n + i)) 232 } 233 else 234 s = o.children.eq(o.active.index); 235 236 237 else 238 s = o.children; 239 240 return "vertical" == o.settings.mode 241 ? (s.each(function () { 242 e += t(this).outerHeight() 243 }), o.settings.slideMargin > 0 && (e += o.settings.slideMargin * (o.settings.minSlides - 1))) 244 : e = Math.max.apply(Math, s.map(function () { 245 return t(this).outerHeight(!1) 246 }).get()), 247 e 248 }, 249 v = function () { 250 var t = "100%"; 251 return o.settings.slideWidth > 0 && ( 252 t = "horizontal" == o.settings.mode 253 ? o.settings.maxSlides * o.settings.slideWidth + (o.settings.maxSlides - 1) * o.settings.slideMargin 254 : o.settings.slideWidth 255 ), 256 t 257 }, 258 u = function () { 259 var t = o.settings.slideWidth, 260 e = o.viewport.width(); 261 return 0 == o.settings.slideWidth || o.settings.slideWidth > e && ! o.carousel || "vertical" == o.settings.mode 262 ? t = e 263 : o.settings.maxSlides > 1 && "horizontal" == o.settings.mode && (e > o.maxThreshold || e < o.minThreshold && (t =( e - o.settings.slideMargin * (o.settings.minSlides - 1)) / o.settings.minSlides)), 264 t 265 }, 266 f = function () { 267 var t = 1; 268 if ("horizontal" == o.settings.mode && o.settings.slideWidth > 0) 269 if (o.viewport.width() < o.minThreshold) 270 t = o.settings.minSlides; 271 272 else if (o.viewport.width() > o.maxThreshold) 273 t = o.settings.maxSlides; 274 else { 275 var e = o 276 .children 277 .first() 278 .width(); 279 t = Math.floor(o.viewport.width() / e) 280 } else 281 "vertical" == o.settings.mode && (t = o.settings.minSlides); 282 283 return t 284 }, 285 x = function () { 286 var t = 0; 287 if (o.settings.moveSlides > 0) 288 if (o.settings.infiniteLoop) 289 t = o.children.length / m(); 290 291 else 292 for (var e = 0, i = 0; e < o.children.length;) 293 ++ t, 294 e = i + f(), 295 i += o.settings.moveSlides <= f() 296 ? o.settings.moveSlides 297 : f(); 298 299 else
300 t = Math.ceil(o.children.length / f()); 301 302 return t 303 }, 304 m = function () { 305 return o.settings.moveSlides > 0 && o.settings.moveSlides <= f() 306 ? o.settings.moveSlides 307 : f() 308 }, 309 S = function () { 310 if (o.children.length > o.settings.maxSlides && o.active.last && ! o.settings.infiniteLoop) { 311 if ("horizontal" == o.settings.mode) { 312 var t = o.children.last(), 313 e = t.position(); 314 b(-(e.left -(o.viewport.width() - t.width())), "reset", 0) 315 } else if ("vertical" == o.settings.mode) { 316 var i = o.children.length - o.settings.minSlides, 317 e = o 318 .children 319 .eq(i) 320 .position(); 321 b(- e.top, "reset", 0) 322 } 323 } else { 324 var e = o 325 .children 326 .eq(o.active.index * m()) 327 .position(); 328 o.active.index == x() - 1 && (o.active.last =! 0), 329 void 0 != e && ( 330 "horizontal" == o.settings.mode 331 ? b(- e.left, "reset", 0) 332 : "vertical" == o.settings.mode && b(- e.top, "reset", 0) 333 ) 334 } 335 }, 336 b = function (t, e, i, s) { 337 if (o.usingCSS) { 338 var n = "vertical" == o.settings.mode 339 ? "translate3d(0, " + t + "px, 0)" 340 : "translate3d(" + t + "px, 0, 0)"; 341 r.css("-" + o.cssPrefix + "-transition-duration", i / 1e3 + "s"), 342 "slide" == e 343 ? (r.css(o.animProp, n), r.bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function () { 344 r.unbind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd"), 345 D() 346 })) 347 : "reset" == e 348 ? r.css(o.animProp, n) 349 : "ticker" == e && (r.css("-" + o.cssPrefix + "-transition-timing-function", "linear"), r.css(o.animProp, n), r.bind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd", function () { 350 r.unbind("transitionend webkitTransitionEnd oTransitionEnd MSTransitionEnd"), 351 b(s.resetValue, "reset", 0), 352 N() 353 })) 354 } else { 355 var a = {}; 356 a[o.animProp] = t, 357 "slide" == e 358 ? r.animate(a, i, o.settings.easing, function () { 359 D() 360 }) 361 : "reset" == e 362 ? r.css(o.animProp, t) 363 : "ticker" == e && r.animate(a, speed, "linear", function () { 364 b(s.resetValue, "reset", 0), 365 N() 366 }) 367 } 368 }, 369 w = function () { 370 for (var e = "", i = x(), s = 0; i > s; s++) { 371 var n = ""; 372 o.settings.buildPager && t.isFunction(o.settings.buildPager) 373 ? (n = o.settings.buildPager(s), o.pagerEl.addClass("bx-custom-pager")) 374 : (n = s + 1, o.pagerEl.addClass("bx-default-pager")), 375 e += '<div class="bx-pager-item"><a href="" data-slide-index="' + s + '" class="bx-pager-link">' + n + "</a></div>" 376 } 377 o.pagerEl.html(e) 378 }, 379 T = function () { 380 o.settings.pagerCustom 381 ? o.pagerEl = t(o.settings.pagerCustom) 382 : ( 383 o.pagerEl = t('<div class="bx-pager" />'), 384 o.settings.pagerSelector 385 ? t(o.settings.pagerSelector).html(o.pagerEl) 386 : o 387 .controls 388 .el 389 .addClass("bx-has-pager") 390 .append(o.pagerEl), 391 w() 392 ), 393 o.pagerEl.delegate("a", "click", q) 394 }, 395 C = function () { 396 o.controls.next = t('<a class="bx-next" href="">' + o.settings.nextText + "</a>"), 397 o.controls.prev = t('<a class="bx-prev" href="">' + o.settings.prevText + "</a>"), 398 o 399 .controls 400 .next 401 .bind("click", y), 402 o 403 .controls 404 .prev 405 .bind("click", z), 406 o.settings.nextSelector && t(o.settings.nextSelector).append(o.controls.next), 407 o.settings.prevSelector && t(o.settings.prevSelector).append(o.controls.prev), 408 o.settings.nextSelector || o.settings.prevSelector || (o.controls.directionEl = t('<
408div class="bx-controls-direction" />'), o 409 .controls 410 .directionEl 411 .append(o.controls.prev) 412 .append(o.controls.next), o 413 .controls 414 .el 415 .addClass("bx-has-controls-direction") 416 .append(o.controls.directionEl)) 417 }, 418 E = function () { 419 o.controls.start = t('<div class="bx-controls-auto-item"><a class="bx-start" href="">' + o.settings.startText + "</a></div>"), 420 o.controls.stop = t('<div class="bx-controls-auto-item"><a class="bx-stop" href="">' + o.settings.stopText + "</a></div>"), 421 o.controls.autoEl = t('<div class="bx-controls-auto" />'), 422 o 423 .controls 424 .autoEl 425 .delegate(".bx-start", "click", k), 426 o 427 .controls 428 .autoEl 429 .delegate(".bx-stop", "click", M), 430 o.settings.autoControlsCombine 431 ? o 432 .controls 433 .autoEl 434 .append(o.controls.start) 435 : o 436 .controls 437 .autoEl 438 .append(o.controls.start) 439 .append(o.controls.stop), 440 o.settings.autoControlsSelector 441 ? t(o.settings.autoControlsSelector).html(o.controls.autoEl) 442 : o 443 .controls 444 .el 445 .addClass("bx-has-controls-auto") 446 .append(o.controls.autoEl), 447 A( 448 o.settings.autoStart 449 ? "stop" 450 : "start" 451 ) 452 }, 453 P = function () { 454 o.children.each(function () { 455 var e = t(this).find("img:first").attr("title"); 456 void 0 != e && ("" + e).length && t(this).append('<div class="bx-caption"><span>' + e + "</span></div>") 457 }) 458 }, 459 y = function (t) { 460 o.settings.auto && r.stopAuto(), 461 r.goToNextSlide(), 462 t.preventDefault() 463 }, 464 z = function (t) { 465 o.settings.auto && r.stopAuto(), 466 r.goToPrevSlide(), 467 t.preventDefault() 468 }, 469 k = function (t) { 470 r.startAuto(), 471 t.preventDefault() 472 }, 473 M = function (t) { 474 r.stopAuto(), 475 t.preventDefault() 476 }, 477 q = function (e) { 478 o.settings.auto && r.stopAuto(); 479 var i = t(e.currentTarget), 480 s = parseInt(i.attr("data-slide-index")); 481 s != o.active.index && r.goToSlide(s), 482 e.preventDefault() 483 }, 484 I = function (e) { 485 var i = o.children.length; 486 return "short" == o.settings.pagerType 487 ? (o.settings.maxSlides > 1 && (i = Math.ceil(o.children.length / o.settings.maxSlides)), o.pagerEl.html(e + 1 + o.settings.pagerShortSeparator + i), void 0) 488 : (o 489 .pagerEl 490 .find("a") 491 .removeClass("active"), o.pagerEl.each(function (i, s) { 492 t(s) 493 .find("a") 494 .eq(e) 495 .addClass("active") 496 }), void 0) 497 }, 498 D = function () { 499 if (o.settings.infiniteLoop) { 500 var t = ""; 501 0 == o.active.index 502 ? t = o 503 .children 504 .eq(0) 505 .position() 506 : o.active.index == x() - 1 && o.carousel 507 ? t = o 508 .children 509 .eq((x() - 1) * m()) 510 .position() 511 : o.active.index == o.children.length - 1 && (t = o 512 .children 513 .eq(o.children.length - 1) 514 .position()), 515 "horizontal" == o.settings.mode 516 ? b(- t.left, "reset", 0) 517 : "vertical" == o.settings.mode && b(- t.top, "reset", 0) 518 } 519 o.working = !1, 520 o.settings.onSlideAfter(o.children.eq(o.active.index), o.oldIndex, o.active.index) 521 }, 522 A = function (t) { 523 o.settings.autoControlsCombine 524 ? o 525 .controls 526 .autoEl 527 .html(o.controls[t]) 528 : (o 529 .controls 530 .autoEl 531 .find("a") 532 .removeClass("active"), o 533 .controls 534 .autoEl 535 .find("a:not(.bx-" + t + ")") 536 .addClass("active")) 537 }, 538 W = function () { 539 1 == x() 540 ? (o 541 .controls 542 .prev 543 .addClass("disabled"), o 544 .controls 545 .next 546 .addClass("disabled")) 547 : ! o.settings.infiniteLoop && o.settings.hideControlOnEnd && ( 548 0 == o.active.index 549 ? (o 550 .controls 551 .prev 552 .addClass("disabled"), o 553 .controls 554 .next 555 .removeClass("disabled")) 556 : o.active.index == x() - 1 557 ? (o 558 .controls 559 .next 560 .addClass("disabled"), o 561 .controls 562 .prev 563 .removeClass("disabled")) 564 : (o 565 .controls 566 .prev 567 .removeClass("disabled"), o 568 .controls 569 .next 570 .removeClass("disabled")) 571 ) 572 }, 573 H = function () { 574 o.settings.autoDelay > 0 575 ? setTimeout(r.startAuto, o.settings.autoDelay) 576 : r.startAuto(), 577 o.settings.autoHover && r.hover(function () { 578 o.interval && (r.stopAuto(!0), o.autoPaused =! 0) 579 }, function () { 580 o.autoPaused && (r.startAuto(!0), o.autoPaused = null) 581 }) 582 }, 583 L = function () { 584 var e = 0; 585 if ("next" == o.settings.autoDirection) 586 r.append(o 587 .children 588 .clone() 589 .addClass("bx-clone")); 590 else { 591 r.prepend(o 592 .children 593 .clone() 594 .addClass("bx-clone")); 595 var i = o 596 .children 597 .first() 598 .position(); 599 e = "horizontal" == o.settings.mode 600 ? - i.left 601 : - i.top 602 } 603 b(e, "reset", 0), 604 o.settings.pager = !1, 605 o.settings.controls = !1, 606 o.settings.autoControls = !1, 607 o.settings.tickerHover && ! o.usingCSS && o.viewport.hover(function () { 608 r.stop() 609 }, function () { 610 var e = 0; 611 o.children.each(function () { 612 e += "horizontal" == o.settings.mode 613 ? t(this).outerWidth(!0) 614 : t(this).outerHeight(!0) 615 }); 616 var i = o.settings.speed / e, 617 s = "horizontal" == o.settings.mode 618 ? "left" 619 : "top",
620 n = i * (e - Math.abs(parseInt(r.css(s)))); 621 N(n) 622 }), 623 N() 624 }, 625 N = function (t) { 626 speed = t 627 ? t 628 : o.settings.speed; 629 var e = { 630 left: 0, 631 top: 0 632 }, 633 i = { 634 left: 0, 635 top: 0 636 }; 637 "next" == o.settings.autoDirection 638 ? e = r 639 .find(".bx-clone") 640 .first() 641 .position() 642 : i = o 643 .children 644 .first() 645 .position(); 646 var s = "horizontal" == o.settings.mode 647 ? - e.left 648 : - e.top, 649 n = "horizontal" == o.settings.mode 650 ? - i.left 651 : - i.top, 652 a = { 653 resetValue: n 654 }; 655 b(s, "ticker", speed, a) 656 }, 657 O = function () { 658 o.touch = { 659 start: { 660 x: 0, 661 y: 0 662 }, 663 end: { 664 x: 0, 665 y: 0 666 } 667 }, 668 o.viewport.bind("touchstart", X) 669 }, 670 X = function (t) { 671 if (o.working) 672 t.preventDefault(); 673 else { 674 o.touch.originalPos = r.position(); 675 var e = t.originalEvent; 676 o 677 .touch 678 .start 679 .x = e.changedTouches[0].pageX, 680 o 681 .touch 682 .start 683 .y = e.changedTouches[0].pageY, 684 o.viewport.bind("touchmove", Y), 685 o.viewport.bind("touchend", V) 686 } 687 }, 688 Y = function (t) { 689 var e = t.originalEvent, 690 i = Math.abs(e.changedTouches[0].pageX - o 691 .touch 692 .start 693 .x), 694 s = Math.abs(e.changedTouches[0].pageY - o 695 .touch 696 .start 697 .y); 698 if ( 699 3 * i > s && o.settings.preventDefaultSwipeX 700 ? t.preventDefault() 701 : 3 * s > i && o.settings.preventDefaultSwipeY && t.preventDefault(), 702 "fade" != o.settings.mode && o.settings.oneToOneTouch 703 ) { 704 var n = 0; 705 if ("horizontal" == o.settings.mode) { 706 var r = e.changedTouches[0].pageX - o 707 .touch 708 .start 709 .x; 710 n = o 711 .touch 712 .originalPos 713 .left + r 714 } else { 715 var r = e.changedTouches[0].pageY - o 716 .touch 717 .start 718 .y; 719 n = o 720 .touch 721 .originalPos 722 .top + r 723 } 724 b(n, "reset", 0) 725 } 726 }, 727 V = function (t) { 728 o.viewport.unbind("touchmove", Y); 729 var e = t.originalEvent, 730 i = 0; 731 if (o 732 .touch 733 .end 734 .x = e.changedTouches[0].pageX, o 735 .touch 736 .end 737 .y = e.changedTouches[0].pageY, "fade" == o.settings.mode) { 738 var s = Math.abs(o 739 .touch 740 .start 741 .x - o 742 .touch 743 .end 744 .x); 745 s >= o.settings.swipeThreshold && ( 746 o 747 .touch 748 .start 749 .x > o 750 .touch 751 .end 752 .x 753 ? r.goToNextSlide() 754 : r.goToPrevSlide(), 755 r.stopAuto() 756 ) 757 } else { 758 var s = 0; 759 "horizontal" == o.settings.mode 760 ? (s = o 761 .touch 762 .end 763 .x - o 764 .touch 765 .start 766 .x, i = o 767 .touch 768 .originalPos 769 .left) 770 : (s = o 771 .touch 772 .end 773 .y - o 774 .touch 775 .start 776 .y, i = o 777 .touch 778 .originalPos 779 .top), 780 ! o.settings.infiniteLoop && (0 == o.active.index && s > 0 || o.active.last && 0 > s) 781 ? b(i, "reset", 200) 782 : Math.abs(s) >= o.settings.swipeThreshold 783 ? ( 784 0 > s 785 ? r.goToNextSlide() 786 : r.goToPrevSlide(), 787 r.stopAuto() 788 ) 789 : b(i, "reset", 200) 790 } o.viewport.unbind("touchend", V) 791 }, 792 B = function () { 793 var e = t(window).width(), 794 i = t(window).height(); 795 (a != e || l != i) && (a = e, l = i, r.redrawSlider()) 796 }; 797 return r.goToSlide = function (e, i) { 798 if (! o.working && o.active.index != e) 799 if ( 800 o.working =! 0, 801 o.oldIndex = o.active.index, 802 o.active.index = 0 > e 803 ? x() - 1 804 : e >= x() 805 ? 0 806 : e, 807 o.settings.onSlideBefore(o.children.eq(o.active.index), o.oldIndex, o.active.index), 808 "next" == i 809 ? o.settings.onSlideNext(o.children.eq(o.active.index), o.oldIndex, o.active.index) 810 : "prev" == i && o.settings.onSlidePrev(o.children.eq(o.active.index), o.oldIndex, o.active.index), 811 o.active.last = o.active.index >= x() - 1, 812 o.settings.pager && I(o.active.index), 813 o.settings.controls && W(), 814 "fade" == o.settings.mode 815 ) 816 o.settings.adaptiveHeight && o.viewport.height() != p() && o.viewport.animate({ 817 height: p() 818 }, o.settings.adaptiveHeightSpeed), 819 o 820 .children 821 .filter(":visible") 822 .fadeOut(o.settings.speed) 823 .css({zIndex: 0}), 824 o 825 .children 826 .eq(o.active.index) 827 .css("zIndex", 51) 828 .fadeIn(o.settings.speed, function () { 829 t(this).css("zIndex", 50), 830 D() 831 }); 832 833 else { 834 o.settings.adaptiveHeight && o.viewport.height() != p() && o.viewport.animate({ 835 height: p() 836 }, o.settings.adaptiveHeightSpeed); 837 var s = 0, 838 n = { 839 left: 0, 840 top: 0 841 }; 842 if (! o.settings.infiniteLoop && o.carousel && o.active.last) 843 if ("horizontal" == o.settings.mode) { 844 var a = o.children.eq(o.children.length - 1); 845 n = a.position(), 846 s = o.viewport.width() - a.outerWidth() 847 } 848 else { 849 var l = o.children.length - o.settings.minSlides; 850 n = o 851 .children 852 .eq(l) 853 .position() 854 } else if (o.carousel && o.active.last && "prev" == i) { 855 var d = 1 == o.settings.moveSlides 856 ? o.settings.maxSlides - m() 857 : (x() - 1) * m() - (o.children.length - o.settings.maxSlides), 858 a = r.children(".bx-clone").eq(d); 859 n = a.position() 860 } else if ("next" == i && 0 == o.active.index) 861 n = r 862 .find("> .bx-clone") 863 .eq(o.settings.maxSlides) 864 .position(), 865 o.active.last = !1; 866 else if (e >= 0) { 867 var c = e * m(); 868 n = o 869 .children 870 .eq(c) 871 .position() 872 } 873 if ("undefined" != typeof n) { 874 var g = "horizontal" == o.settings.mode 875 ? -(n.left - s) 876 : - n.top; 877 b(g, "slide", o.settings.speed) 878 } 879 } 880}, 881r.goToNextSlide = function () { 882 if (o.settings.infiniteLoop || ! o.active.last) { 883 var t = parseInt(o.active.index) + 1; 884 r.goToSlide(t, "next") 885 } 886}, 887r.goToPrevSlide = function () { 888 if (o.settings.infiniteLoop || 0 != o.active.index) { 889 var t = parseInt(o.active.index) - 1; 890 r.goToSlide(t, "prev") 891 } 892}, 893r.startAuto = function (t) { 894 o.interval || (o.interval = setInterval(function () { 895 "next" == o.settings.autoDirection 896 ? r.goToNextSlide() 897 : r.goToPrevSlide() 898 }, o.settings.pause), o.settings.autoControls && 1 != t && A("stop")) 899}, 900r.stopAuto = function (t) { 901 o.interval && (clearInterval(o.interval), o.interval = null, o.settings.autoControls && 1 != t && A("start")) 902}, 903r.getCurrentSlide = function () { 904 return o.active.index 905}, 906r.getSlideCount = function () { 907 return o.children.length 908}, 909r.redrawSlider = function () { 910 o 911 .children 912 .add(r.find(".bx-clone")) 913 .outerWidth(u()), 914 o.viewport.css("height", p()), 915 o.settings.ticker || S(), 916 o.active.last && (o.active.index = x() - 1), 917 o.active.index >= x() && (o.active.last =! 0), 918 o.settings.pager && ! o.settings.pagerCustom && (w(), I(o.active.index)) 919}, 920r.destroySlider = function () { 921 o.initialized && ( 922 o.initialized =! 1, 923 t(".bx-clone", this).remove(), 924 o.children.each(function () { 925 void 0 != t(this).data("origStyle") 926 ? t(this).attr("style", t(this).data("origStyle")) 927 : t(this).removeAttr("style") 928 }), 929 void 0 != t(this).data("origStyle") 930 ? this.attr("style", t(this).data("origStyle")) 931 : t(this).removeAttr("style"), 932 t(this).unwrap().unwrap(), 933 o.controls.el && o 934 .controls 935 .el 936 .remove(), 937 o.controls.next && o 938 .controls 939 .next 940 .remove(), 941 o.controls.prev && o 942 .controls 943 .prev 944 .remove(), 945 o.pagerEl && o.pagerEl.remove(), 946 t(".bx-caption", this).remove(), 947 o.controls.autoEl && o 948 .controls 949 .autoEl 950 .remove(), 951 clearInterval(o.interval), 952 o.settings.responsive && t(window).unbind("resize", B) 953 ) 954}, 955r.reloadSlider = function (t) { 956 void 0 != t && (n = t), 957 r.destroySlider(), 958 d() 959}, 960d(), 961this}}(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.