PageSourceSearch

https://www.luminanda.net/wp-content/plugins/mkdf-core/shortcodes/…/jquery.multiscroll.min.js?ver=7.0.7

js luminanda.net collected 2026-10-10 01:40:02 UTC 14,889 bytes, 326 lines download raw bytes

1/*!
2 * multiscroll.js 0.1.8 Beta
3 * https://github.com/alvarotrigo/multiscroll.js
4 * @license MIT licensed
5 *
6 * Copyright (C) 2016 alvarotrigo.com - A project by Alvaro Trigo
7 */
8!function (e, t, n, o, i) {
9    e.fn.multiscroll = function (s) {
10        function a() {
11            var n = t.location.hash.replace("#", ""), o = n;
12            if (o.length) {
13                var i = e(".ms-left").find('[data-anchor="' + o + '"]'), s = "undefined" == typeof lastScrolledDestiny;
14                (s || o !== lastScrolledDestiny) && h(i)
15            }
16        }
17
18        function l(t) {
19            clearTimeout(O);
20            var o = e(n.activeElement);
21            if (!o.is("textarea") && !o.is("input") && !o.is("select") && s.keyboardScrolling) {
22                var i = t.which, a = [40, 38, 32, 33, 34];
23                e.inArray(i, a) > -1 && t.preventDefault(), O = setTimeout(function () {
24                    r(t)
25                }, 150)
26            }
27        }
28
29        function r(t) {
30            var n = t.shiftKey;
31            switch (t.which) {
32                case 38:
33                case 33:
34                    X.moveSectionUp();
35                    break;
36                case 32:
37                    if (n) {
38                        X.moveSectionUp();
39                        break
40                    }
41                case 40:
42                case 34:
43                    X.moveSectionDown();
44                    break;
45                case 36:
46                    X.moveTo(1);
47                    break;
48                case 35:
49                    X.moveTo(e(".ms-left .ms-section").length);
50                    break;
51                default:
52                    return
53            }
54        }
55
56        function c(t) {
57            t.preventDefault();
58            var n = e(this).parent().index();
59            h(e(".ms-left .ms-section").eq(n))
60        }
61
62        function m() {
63            var t = e(this).data("tooltip");
64            e('<div class="multiscroll-tooltip ' + s.navigationPosition + '">' + t + "</div>").hide().appendTo(e(this)).fadeIn(200)
65        }
66
67        function f() {
68            e(this).find(".multiscroll-tooltip").fadeOut(200, function () {
69                e(this).remove()
70            })
71        }
72
73        function d() {
74            N = e(t).height(), e(".ms-tableCell").each(function () {
75                e(this).css({height: P(e(this).parent())})
76            }), u(), e.isFunction(s.afterResize) && s.afterResize.call(this)
77        }
78
79        function u() {
80            s.css3 ? (S(e(".ms-left"), "translate3d(0px, -" + e(".ms-left").find(".ms-section.active").position().top + "px, 0px)", !1), S(e(".ms-right"), "translate3d(0px, -" + e(".ms-right").find(".ms-section.active").position().top + "px, 0px)", !1)) : (e(".ms-left").css("top", -e(".ms-left").find(".ms-section.active").position().top), e(".ms-right").css("top", -e(".ms-right").find(".ms-section.active").position().top))
81        }
82
83        function h(t) {
84            var n = t.index(), o = e(".ms-right").find(".ms-section").eq(W - 1 - n), i = t.data("anchor"), a = e(".ms-left .ms-section.active"), l = a.index() + 1, r = b(t);
85            K = !0;
86            var c = {left: t.position().top, right: o.position().top};
87            if (o.addClass("active").siblings().removeClass("active"), t.addClass("active").siblings().removeClass("active"), C(i), s.css3) {
88                e.isFunction(s.onLeave) && s.onLeave.call(this, l, n + 1, r);
89                var m = "translate3d(0px, -" + c.left + "px, 0px)", f = "translate3d(0px, -" + c.right + "px, 0px)";
90                S(e(".ms-left"), m, !0), S(e(".ms-right"), f, !0), setTimeout(function () {
91                    e.isFunction(s.afterLoad) && s.afterLoad.call(this, i, n + 1), setTimeout(function () {
92                        K = !1
93                    }, q)
94                }, s.scrollingSpeed)
95            } else e.isFunction(s.onLeave) && s.onLeave.call(this, l, n + 1, r), e(".ms-left").animate({top: -c.left}, s.scrollingSpeed, s.easing, function () {
96                e.isFunction(s.afterLoad) && s.afterLoad.call(this, i, n + 1), setTimeout(function () {
97                    K = !1
98                }, q)
99            }), e(".ms-right").animate({top: -c.right}, s.scrollingSpeed, s.easing);
100            lastScrolledDestiny = i, w(i), x(i, n)
101        }
102
103        function v() {
104            n.addEventListener ? (n.removeEventListener("mousewheel", g, !1), n.removeEventListener("wheel", g, !1)) : n.detachEvent("onmousewheel", g)
105        }
106
107        function p() {
108            n.addEventListener ? (n.addEventListener("mousewheel", g, !1), n.addEventListener("wheel", g, !1)) : n.attachEvent("onmousewheel", g)
109        }
110
111        function g(e) {
112            e = t.event || e;
113            var n = o.max(-1, o.min(1, e.wheelDelta || -e.deltaY || -e.detail));
114            return K || (n < 0 ? X.moveSectionDown() : X.moveSectionUp()), !1
115        }
116
117        function S(e, t, n) {
118            e.toggleClass("ms-easing", n), e.css(y(t))
119        }
120
121        function y(e) {
122            return {"-webkit-transform": e, "-moz-transform": e, "-ms-transform": e, transform: e}
123        }
124
125        function x(t, n) {
126            s.navigation && (e("#multiscroll-nav").find(".active").removeClass("active"), t ? e("#multiscroll-nav").find('a[href="#' + t + '"]').addClass("active") : e("#multiscroll-nav").find("li").eq(n).find("a").addClass("active"))
127        }
128
129        function w(t) {
130            s.menu && (e(s.menu).find(".active").removeClass("active"), e(s.menu).find('[data-menuanchor="' + t + '"]').addClass("active"))
131        }
132
133        function b(t) {
134            var n = e(".ms-left .ms-section.active").index(), o = t.index();
135            return n > o ? "up" : "down"
136        }
137
138        function C(e) {
139            s.anchors.length && (location.hash = e), T()
140        }
141
142        function T() {
143            var t = e(".ms-left .ms-section.active"), n = t.data("anchor"), o = t.index(), i = String(o);
144            s.anchors.length && (i = n), i = i.replace("/", "-").replace("#", "");
145            var a = new RegExp("\\b\\s?ms-viewing-[^\\s]+\\b", "g");
146            e("body")[0].className = e("body")[0].className.replace(a, ""), e("body").addClass("ms-viewing-" + i)
147        }
148
149        function E() {
150            var e, o = n.createElement("p"), s = {
151                webkitTransform: "-webkit-transform",
152                OTransform: "-o-transform",
153                msTransform: "-ms-transform",
154                MozTransform: "-moz-transform",
155                transform: "transform"
156            };
157            n.body.insertBefore(o, null);
158            for (var a in s)o.style[a] !== i && (o.style[a] = "translate3d(1px,1px,1px)", e = t.getComputedStyle(o).getPropertyValue(s[a]));
159            return n.body.removeChild(o), e !== i && e.length > 0 && "none" !== e
160        }
161
162        function M(e) {
163            e.addClass("ms-table").wrapInner('<div class="ms-tableCell" style="height: ' + P(e) + 'px" />')
164        }
165
166        function P(e) {
167            var t = N;
168            if (s.paddingTop || s.paddingBottom) {
169                var n = parseInt(e.css("padding-top")) + parseInt(e.css("padding-bottom"));
170                t = N - n
171            }
172            return t
173        }
174
175        function k() {
176            var n = t.location.hash.replace("#", ""), o = e('.ms-left .ms-section[data-anchor="' + n + '"]');
177            n.length && h(o)
178        }
179
180        function L(n) {
181            var i = n.originalEvent;
182            if (D(i)) {
183                n.preventDefault();
184                e(".ms-left .ms-section.active");
185                if (!K) {
186                    var a = F(i);
187                    A = a.y, V = a.x, o.abs(Q - A) > e(t).height() / 100 * s.touchSensitivity && (Q > A ? X.moveSectionDown() : A > Q && X.moveSectionUp())
188                }
189            }
190        }
191
192        function D(e) {
193            return "undefined" == typeof e.pointerType || "mouse" != e.pointerType
194        }
195
196        function z(e) {
197            var t = e.originalEvent;
198            if (D(t)) {
199                var n = F(t);
200                Q = n.y, j = n.x
201            }
202        }
203
204        function B() {
205            I && (MSPointer = Y(), e(n).off("touchstart " + MSPointer.down).on("touchstart " + MSPointer.down, z), e(n).off("touchmove " + MSPointer.move).on("touchmove " + MSPointer.move, L))
206        }
207
208        function R() {
209            I && (MSPointer = Y(), e(n).off("touchstart " + MSPointer.down), e(n).off("touchmove " + MSPointer.move))
210        }
211
212        function Y() {
213            var e;
214            return e = t.PointerEvent ? {down: "pointerdown", move: "pointermove"} : {
215                down: "MSPointerDown",
216                move: "MSPointerMove"
217            }
218        }
219
220        function F(e) {
221            var t = [];
222            return t.y = "undefined" != typeof e.pageY && (e.pageY || e.pageX) ? e.pageY : e.touches[0].pageY, t.x = "undefined" != typeof e.pageX && (e.pageY || e.pageX) ? e.pageX : e.touches[0].pageX, I && D(e) && (t.y = e.touches[0].pageY, t.x = e.touches[0].pageX), t
223        }
224
225        var X = e.fn.multiscroll;
226        s = e.extend({
227            verticalCentered: !0,
228            scrollingSpeed: 700,
229            easing: "easeInQuart",
230            menu: !1,
231            sectionsColor: [],
232            anchors: [],
233            navigation: !1,
234            navigationPosition: "right",
235            navigationColor: "#000",
236            navigationTooltips: [],
237            loopBottom: !1,
238            loopTop: !1,
239            css3: !1,
240            paddingTop: 0,
241            paddingBottom: 0,
242            fixedElements: null,
243            normalScrollElements: null,
244            keyboardScrolling: !0,
245            touchSensitivity: 5,
246            sectionSelector: ".ms-section",
247            leftSelector: ".ms-left",
248            rightSelector: ".ms-right",
249            afterLoad: null,
250            onLeave: null,
251            afterRender: null,
252            afterResize: null
253        }, s);
254        var q = 600, I = "ontouchstart" in t || navigator.msMaxTouchPoints > 0 || navigator.maxTouchPoints;
255        ".ms-right" !== s.rightSelector && e(s.rightSelector).addClass("ms-right"), ".ms-left" !== s.leftSelector && e(s.leftSelector).addClass("ms-left");
256        var U, W = e(".ms-left").find(".ms-section").length, K = !1, N = e(t).height();
257        p(), B(), s.css3 && (s.css3 = E()), e("html, body").css({
258            overflow: "hidden",
259            height: "100%"
260        }), ".ms-section" !== s.sectionSelector && e(s.sectionSelector).each(function () {
261            e(this).addClass("ms-section")
262        }), s.navigation && (e("body").append('<div id="multiscroll-nav"><ul></ul></div>'), U = e("#multiscroll-nav"), U.css("color", s.navigationColor), U.addClass(s.navigationPosition)), e(".ms-right, .ms-left").css({
263            width: "50%",
264            position: "absolute",
265            height: "100%",
266            "-ms-touch-action": "none"
267        }), e(".ms-right").css({
268            right: "1px",
269            top: "0",
270            "-ms-touch-action": "none",
271            "touch-action": "none"
272        }), e(".ms-left").css({
273            left: "0",
274            top: "0",
275            "-ms-touch-action": "none",
276            "touch-action": "none"
277        }), e(".ms-left .ms-section, .ms-right .ms-section").each(function () {
278            var t = e(this).index();
279            if ((s.paddingTop || s.paddingBottom) && e(this).css("padding", s.paddingTop + " 0 " + s.paddingBottom + " 0"), "undefined" != typeof s.sectionsColor[t] && e(this).css("background-color", s.sectionsColor[t]), "undefined" != typeof s.anchors[t] && e(this).attr("data-anchor", s.anchors[t]), s.verticalCentered && M(e(this)), e(this).closest(".ms-left").length && s.navigation) {
280                var n = "";
281                s.anchors.length && (n = s.anchors[t]);
282                var o = s.navigationTooltips[t];
283                "undefined" == typeof o && (o = ""), s.navigation && U.find("ul").append('<li data-tooltip="' + o + '"><a href="#' + n + '"><span></span></a></li>')
284            }
285        }), e(".ms-right").html(e(".ms-right").find(".ms-section").get().reverse()), e(".ms-left .ms-section, .ms-right .ms-section").each(function () {
286            var t = e(this).index();
287            e(this).css({height: "100%"}), !t && s.navigation && U.find("li").eq(t).find("a").addClass("active")
288        }).promise().done(function () {
289            e(".ms-left .ms-section.active").length || (e(".ms-right").find(".ms-section").last().addClass("active"), e(".ms-left").find(".ms-section").first().addClass("active")), s.navigation && U.css("margin-top", "-" + U.height() / 2 + "px"), e.isFunction(s.afterRender) && s.afterRender.call(this), u(), T(), e(t).on("load", function () {
290                k()
291            })
292        }), e(t).on("hashchange", a), e(n).keydown(l);
293        var O;
294        e(n).mousedown(function (e) {
295            if (1 == e.button)return e.preventDefault(), !1
296        }), e(n).on("click", "#multiscroll-nav a", c), e(n).on({
297            mouseenter: m,
298            mouseleave: f
299        }, "#multiscroll-nav li"), s.normalScrollElements && (e(n).on("mouseenter", s.normalScrollElements, function () {
300            X.setMouseWheelScrolling(!1)
301        }), e(n).on("mouseleave", s.normalScrollElements, function () {
302            X.setMouseWheelScrolling(!0)
303        })), e(t).on("resize", d), X.moveSectionUp = function () {
304            var t = e(".ms-left .ms-section.active").prev(".ms-section");
305            !t.length && s.loopTop && (t = e(".ms-left .ms-section").last()), t.length && h(t)
306        }, X.moveSectionDown = function () {
307            var t = e(".ms-left .ms-section.active").next(".ms-section");
308            !t.length && s.loopBottom && (t = e(".ms-left .ms-section").first()), t.length && h(t)
309        }, X.moveTo = function (t) {
310            var n = "";
311            n = isNaN(t) ? e('.ms-left [data-anchor="' + t + '"]') : e(".ms-left .ms-section").eq(t - 1), h(n)
312        }, X.setKeyboardScrolling = function (e) {
313            s.keyboardScrolling = e
314        }, X.setMouseWheelScrolling = function (e) {
315            e ? p() : v()
316        }, X.setScrollingSpeed = function (e) {
317            s.scrollingSpeed = e
318        };
319        var Q = 0, j = 0, A = 0, V = 0;
320        X.destroy = function () {
321            X.setKeyboardScrolling(!1), X.setMouseWheelScrolling(!1), R(), e(t).off("hashchange", a).off("resize", d), e(n).off("mouseenter", "#multiscroll-nav li").off("mouseleave", "#multiscroll-nav li").off("
321click", "#multiscroll-nav a")
322        }, X.build = function () {
323            X.setKeyboardScrolling(!0), X.setMouseWheelScrolling(!0), B(), e(t).on("hashchange", a).on("resize", d), e(n).on("mouseenter", "#multiscroll-nav li", m).on("mouseleave", "#multiscroll-nav li", f).on("click", "#multiscroll-nav a", c)
324        }
325    }
326}(jQuery, window, document, Math);

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.