/* * Basic jQuery Slider plug-in v.1.3 * * http://www.basic-slider.com * * Authored by John Cobb * http://www.johncobb.name * @john0514 * * Copyright 2011, John Cobb * License: GNU General Public License, version 3 (GPL-3.0) * http://www.opensource.org/licenses/gpl-3.0.html * */ (function (e) { "use strict"; e.fn.bjqs = function (t) { var n = { width: 700, height: 300, animtype: "fade", animduration: 450, animspeed: 4e3, automatic: !0, showcontrols: !0, centercontrols: !0, nexttext: "Next", prevtext: "Prev", showmarkers: !0, centermarkers: !0, keyboardnav: !0, hoverpause: !0, usecaptions: !0, randomstart: !1, responsive: !1 }, r = e.extend({}, n, t), i = this, s = i.find("ul.bjqs"), o = s.children("li"), u = null, a = null, f = null, l = null, c = null, h = null, p = null, d = null, v = { slidecount: o.length, animating: !1, paused: !1, currentslide: 1, nextslide: 0, currentindex: 0, nextindex: 0, interval: null }, m = { width: null, height: null, ratio: null }, g = { fwd: "forward", prev: "previous" }, y = function () { o.addClass("bjqs-slide"); r.responsive ? b() : E(); if (v.slidecount > 1) { r.randomstart && L(); r.showcontrols && x(); r.showmarkers && T(); r.keyboardnav && N(); r.hoverpause && r.automatic && C(); r.animtype === "slide" && S() } r.usecaptions && k(); if (r.animtype === "slide" && !r.randomstart) { v.currentindex = 1; v.currentslide = 2 } s.show(); o.eq(v.currentindex).show(); r.automatic && (v.interval = setInterval(function () { O(g.fwd, !1) }, r.animspeed)) }, b = function () { m.width = i.outerWidth(); m.ratio = m.width / r.width, m.height = r.height * m.ratio; if (r.animtype === "fade") { o.css({ height: r.height, width: "100%" }); o.children("img").css({ height: r.height, width: "100%" }); s.css({ height: r.height, width: "100%" }); i.css({ height: r.height, "max-width": r.width, position: "relative" }); if (m.width < r.width) { o.css({ height: m.height }); o.children("img").css({ height: m.height }); s.css({ height: m.height }); i.css({ height: m.height }) } e(window).resize(function () { m.width = i.outerWidth(); m.ratio = m.width / r.width, m.height = r.height * m.ratio; o.css({ height: m.height }); o.children("img").css({ height: m.height }); s.css({ height: m.height }); i.css({ height: m.height }) }) } if (r.animtype === "slide") { o.css({ height: r.height, width: r.width }); o.children("img").css({ height: r.height, width: r.width }); s.css({ height: r.height, width: r.width * r.slidecount }); i.css({ height: r.height, "max-width": r.width, position: "relative" }); if (m.width < r.width) { o.css({ height: m.height }); o.children("img").css({ height: m.height }); s.css({ height: m.height }); i.css({ height: m.height }) } e(window).resize(function () { m.width = i.outerWidth(), m.ratio = m.width / r.width, m.height = r.height * m.ratio; o.css({ height: m.height, width: m.width }); o.children("img").css({ height: m.height, width: m.width }); s.css({ height: m.height, width: m.width * r.slidecount }); i.css({ height: m.height }); h.css({ height: m.height, width: m.width }); w(function () { O(!1, v.currentslide) }, 200, "some unique string") }) } }, w = function () { var e = {}; return function (t, n, r) { r || (r = "Don't call this twice without a uniqueId"); e[r] && clearTimeout(e[r]); e[r] = setTimeout(t, n) } }(), E = function () { o.css({ height: r.height, width: r.width }); s.css({ height: r.height, width: r.width }); i.css({ height: r.height, width: r.width, position: "relative" }) }, S = function () { p = o.eq(0).clone(); d = o.eq(v.slidecount - 1).clone(); p.attr({ "data-clone": "last", "data-slide": 0 }).appendTo(s).show(); d.attr({ "data-clone": "first", "data-slide": 0 }).prependTo(s).show(); o = s.children("li"); v.slidecount = o.length; h = e('
'); if (r.responsive && m.width < r.width) { h.css({ width: m.width, height: m.height, overflow: "hidden", position: "relative" }); s.css({ width: m.width * (v.slidecount + 2), left: -m.width * v.currentslide }) } else { h.css({ width: r.width, height: r.height, overflow: "hidden", position: "relative" }); s.css({ width: r.width * (v.slidecount + 2), left: -r.width * v.currentslide }) } o.css({ "float": "left", position: "relative", display: "list-item" }); h.prependTo(i); s.appendTo(h) }, x = function () { u = e('