1$.fn.easeScroll = function(options) { 2 !(function() { 3 function e() { 4 var e = !1; 5 e && c("keydown", r), v.keyboardSupport && !e && u("keydown", r); 6 } 7 8 function t() { 9 if (document.body) { 10 var t = document.body, 11 o = document.documentElement, 12 n = window.innerHeight, 13 r = t.scrollHeight; 14 if ( 15 ((S = document.compatMode.indexOf("CSS") >= 0 ? o : t), 16 (w = t), 17 e(), 18 (x = !0), 19 top != self) 20 ) 21 y = !0; 22 else if (r > n && (t.offsetHeight <= n || o.offsetHeight <= n)) { 23 var a = !1, 24 i = function() { 25 a || 26 o.scrollHeight == document.height || 27 ((a = !0), 28 setTimeout(function() { 29 (o.style.height = document.height + "px"), (a = !1); 30 }, 100)); 31 }; 32 if ( 33 ((o.style.height = "auto"), setTimeout(i, 10), S.offsetHeight <= n) 34 ) { 35 var l = document.createElement("div"); 36 (l.style.clear = "both"), t.appendChild(l); 37 } 38 } 39 v.fixedBackground || 40 b || 41 ((t.style.backgroundAttachment = "scroll"), 42 (o.style.backgroundAttachment = "scroll")); 43 } 44 } 45 46 function o(e, t, o, n) { 47 if ((n || (n = 1e3), d(t, o), 1 != v.accelerationMax)) { 48 var r = +new Date(), 49 a = r - C; 50 if (a < v.accelerationDelta) { 51 var i = (1 + 30 / a) / 2; 52 i > 1 && ((i = Math.min(i, v.accelerationMax)), (t *= i), (o *= i)); 53 } 54 C = +new Date(); 55 } 56 if ( 57 (M.push({ 58 x: t, 59 y: o, 60 lastX: 0 > t ? 0.99 : -0.99, 61 lastY: 0 > o ? 0.99 : -0.99, 62 start: +new Date() 63 }), 64 !T) 65 ) { 66 var l = e === document.body, 67 u = function() { 68 for (var r = +new Date(), a = 0, i = 0, c = 0; c < M.length; c++) { 69 var s = M[c], 70 d = r - s.start, 71 f = d >= v.animationTime, 72 h = f ? 1 : d / v.animationTime; 73 v.pulseAlgorithm && (h = p(h)); 74 var m = (s.x * h - s.lastX) >> 0, 75 w = (s.y * h - s.lastY) >> 0; 76 (a += m), 77 (i += w), 78 (s.lastX += m), 79 (s.lastY += w), 80 f && (M.splice(c, 1), c--); 81 } 82 l 83 ? window.scrollBy(a, i) 84 : (a && (e.scrollLeft += a), i && (e.scrollTop += i)), 85 t || o || (M = []), 86 M.length ? E(u, e, n / v.frameRate + 1) : (T = !1); 87 }; 88 E(u, e, 0), (T = !0); 89 } 90 } 91 92 function n(e) { 93 x || t(); 94 var n = e.target, 95 r = l(n); 96 if ( 97 !r || 98 e.defaultPrevented || 99 s(w, "embed") || 100 (s(n, "embed") && /\.pdf/i.test(n.src)) 101 ) 102 return !0; 103 var a = e.wheelDeltaX || 0, 104 i = e.wheelDeltaY || 0; 105 return ( 106 a || i || (i = e.wheelDelta || 0), 107 !v.touchpadSupport && f(i) 108 ? !0 109 : (Math.abs(a) > 1.2 && (a *= v.stepSize / 120), 110 Math.abs(i) > 1.2 && (i *= v.stepSize / 120), 111 o(r, -a, -i), 112 void e.preventDefault()) 113 ); 114 } 115 116 function r(e) { 117 var t = e.target, 118 n = 119 e.ctrlKey || 120 e.altKey || 121 e.metaKey || 122 (e.shiftKey && e.keyCode !== H.spacebar); 123 if ( 124 /input|textarea|select|embed/i.test(t.nodeName) || 125 t.isContentEditable || 126 e.defaultPrevented || 127 n 128 ) 129 return !0; 130 if (s(t, "button") && e.keyCode === H.spacebar) return !0; 131 var r, 132 a = 0, 133 i = 0, 134 u = l(w), 135 c = u.clientHeight; 136 switch ((u == document.body && (c = window.innerHeight), e.keyCode)) { 137 case H.up: 138 i = -v.arrowScroll; 139 break; 140 case H.down: 141 i = v.arrowScroll; 142 break; 143 case H.spacebar: 144 (r = e.shiftKey ? 1 : -1), (i = -r * c * 0.9); 145 break; 146 case H.pageup: 147 i = 0.9 * -c; 148 break; 149 case H.pagedown: 150 i = 0.9 * c; 151 break; 152 case H.home: 153 i = -u.scrollTop; 154 break; 155 case H.end: 156 var d = u.scrollHeight - u.scrollTop - c; 157 i = d > 0 ? d + 10 : 0; 158 break; 159 case H.left: 160 a = -v.arrowScroll; 161 break; 162 case H.right: 163 a = v.arrowScroll; 164 break; 165 default: 166 return !0; 167 } 168 o(u, a, i), e.preventDefault(); 169 } 170 171 function a(e) { 172 w = e.target; 173 } 174 175 function i(e, t) { 176 for (var o = e.length; o--; ) z[N(e[o])] = t; 177 return t; 178 } 179 180 function l(e) { 181 var t = [], 182 o = S.scrollHeight; 183 do { 184 var n = z[N(e)]; 185 if (n) return i(t, n); 186 if ((t.push(e), o === e.scrollHeight)) { 187 if (!y || S.clientHeight + 10 < o) return i(t, document.body); 188 } else if ( 189 e.clientHeight + 10 < e.scrollHeight && 190 ((overflow = getComputedStyle(e, "").getPropertyValue("overflow-y")), 191 "scroll" === overflow || "auto" === overflow) 192 ) 193 return i(t, e); 194 } while ((e = e.parentNode)); 195 } 196 197 function u(e, t, o) { 198 window.addEventListener(e, t, o || !1); 199 } 200 201 function c(e, t, o) { 202 window.removeEventListener(e, t, o || !1); 203 } 204 205 function s(e, t) { 206 return (e.nodeName || "").toLowerCase() === t.toLowerCase(); 207 } 208 209 function d(e, t) { 210 (e = e > 0 ? 1 : -1), 211 (t = t > 0 ? 1 : -1), 212 (k.x !== e || k.y !== t) && ((k.x = e), (k.y = t), (M = []), (C = 0)); 213 } 214 215 function f(e) { 216 if (e) { 217 (e = Math.abs(e)), D.push(e), D.shift(), clearTimeout(A); 218 var t = D[0] == D[1] && D[1] == D[2], 219 o = h(D[0], 120) && h(D[1], 120) && h(D[2], 120); 220 return !(t || o); 221 } 222 } 223 224 function h(e, t) { 225 return Math.floor(e / t) == e / t; 226 } 227 228 function m(e) { 229 var t, o, n; 230 return ( 231 (e *= v.pulseScale), 232 1 > e 233 ? (t = e - (1 - Math.exp(-e))) 234 : ((o = Math.exp(-1)), 235 (e -= 1), 236 (n = 1 - Math.exp(-e)), 237 (t = o + n * (1 - o))), 238 t * v.pulseNormalize 239 ); 240 } 241 242 function p(e) { 243 return e >= 1 244 ? 1 245 : 0 >= e 246 ? 0 247 : (1 == v.pulseNormalize && (v.pulseNormalize /= m(1)), m(e)); 248 } 249 250 var settings = $.extend( 251 { 252 // These are the defaults. 253 frameRate: 60, 254 animationTime: 1000, 255 stepSize: 120, 256 pulseAlgorithm: !0, 257 pulseScale: 8, 258 pulseNormalize: 1, 259 accelerationDelta: 20, 260 accelerationMax: 1, 261 keyboardSupport: !0, 262 arrowScroll: 50, 263 touchpadSupport: !0,
264 fixedBackground: !0 265 }, 266 options 267 ); 268 269 var w, 270 g = { 271 frameRate: settings.frameRate, 272 animationTime: settings.animationTime, 273 stepSize: settings.stepSize, 274 pulseAlgorithm: settings.pulseAlgorithm, 275 pulseScale: settings.pulseScale, 276 pulseNormalize: settings.pulseNormalize, 277 accelerationDelta: settings.accelerationDelta, 278 accelerationMax: settings.accelerationMax, 279 keyboardSupport: settings.keyboardSupport, 280 arrowScroll: settings.arrowScroll, 281 touchpadSupport: settings.touchpadSupport, 282 fixedBackground: settings.fixedBackground, 283 excluded: "" 284 }, 285 v = g, 286 b = !1, 287 y = !1, 288 k = { 289 x: 0, 290 y: 0 291 }, 292 x = !1, 293 S = document.documentElement, 294 D = [120, 120, 120], 295 H = { 296 left: 37, 297 up: 38, 298 right: 39, 299 down: 40, 300 spacebar: 32, 301 pageup: 33, 302 pagedown: 34, 303 end: 35, 304 home: 36 305 }, 306 v = g, 307 M = [], 308 T = !1, 309 C = +new Date(), 310 z = {}; 311 setInterval(function() { 312 z = {}; 313 }, 1e4); 314 var A, 315 N = (function() { 316 var e = 0; 317 return function(t) { 318 return t.uniqueID || (t.uniqueID = e++); 319 }; 320 })(), 321 E = (function() { 322 return ( 323 window.requestAnimationFrame || 324 window.webkitRequestAnimationFrame || 325 function(e, t, o) { 326 window.setTimeout(e, o || 1e3 / 60); 327 } 328 ); 329 })(), 330 K = /chrome|iPad/i.test(window.navigator.userAgent), 331 L = "onmousewheel" in document; 332 L && 333 K && 334 (u("mousedown", a, { passive: false }), 335 u("mousewheel", n, { passive: false }), 336 u("load", t, { passive: false })); 337 })(); 338};
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.