Current File : /pages/54/47/d0016649/home/htdocs/ipc1/wp-content/themes/lhst/lib/js/jquery-smoothscroll.min.js
/*!
 * Envision
 * 
 * @version 3.2.0
 * 
 * @author Wptation
 * @link http://envision.wptation.com/
 * @license ThemeForest Split Licence
 * @copyright 2019
 */

var activeElement,observer,defaultOptions={frameRate:150,animationTime:400,stepSize:130,pulseAlgorithm:!0,pulseScale:8,pulseNormalize:1,accelerationDelta:20,accelerationMax:1,keyboardSupport:!0,arrowScroll:50,touchpadSupport:!0,fixedBackground:!0,excluded:""},options=defaultOptions,isExcluded=!1,isFrame=!1,direction={x:0,y:0},initDone=!1,root=document.documentElement,deltaBuffer=[120,120,120],key={left:37,up:38,right:39,down:40,spacebar:32,pageup:33,pagedown:34,end:35,home:36};function initTest(){var e=!1;if(-1<document.URL.indexOf("google.com/reader/view")&&(e=!0),options.excluded){var t=options.excluded.split(/[,\n] ?/);t.push("mail.google.com");for(var o=t.length;o--;)if(-1<document.URL.indexOf(t[o])){observer&&observer.disconnect(),removeEvent("mousewheel",wheel),isExcluded=e=!0;break}}e&&removeEvent("keydown",keydown),options.keyboardSupport&&!e&&addEvent("keydown",keydown)}function init(){if(document.body){var e=document.body,t=document.documentElement,o=window.innerHeight,n=e.scrollHeight;if(root=0<=document.compatMode.indexOf("CSS")?t:e,activeElement=e,initTest(),initDone=!0,top!=self)isFrame=!0;else if(o<n&&(e.offsetHeight<=o||t.offsetHeight<=o)){function i(){r||t.scrollHeight==document.height||(r=!0,setTimeout(function(){t.style.height=document.height+"px",r=!1},500))}var r=!1;t.style.height="auto",setTimeout(i,10);if((observer=new MutationObserver(i)).observe(e,{attributes:!0,childList:!0,characterData:!1}),root.offsetHeight<=o){var a=document.createElement("div");a.style.clear="both",e.appendChild(a)}}if(-1<document.URL.indexOf("mail.google.com")){var l=document.createElement("style");l.innerHTML=".iu { visibility: hidden }",(document.getElementsByTagName("head")[0]||t).appendChild(l)}else if(-1<document.URL.indexOf("www.facebook.com")){var s=document.getElementById("home_stream");s&&(s.style.webkitTransform="translateZ(0)")}options.fixedBackground||isExcluded||(e.style.backgroundAttachment="scroll",t.style.backgroundAttachment="scroll")}}var que=[],pending=!1,lastScroll=+new Date;function scrollArray(d,f,m,p){if(p=p||1e3,directionCheck(f,m),1!=options.accelerationMax){var e=+new Date-lastScroll;if(e<options.accelerationDelta){var t=(1+30/e)/2;1<t&&(t=Math.min(t,options.accelerationMax),f*=t,m*=t)}lastScroll=+new Date}if(que.push({x:f,y:m,lastX:f<0?.99:-.99,lastY:m<0?.99:-.99,start:+new Date}),!pending){var h=d===document.body,v=function(e){for(var t=+new Date,o=0,n=0,i=0;i<que.length;i++){var r=que[i],a=t-r.start,l=a>=options.animationTime,s=l?1:a/options.animationTime;options.pulseAlgorithm&&(s=pulse(s));var c=r.x*s-r.lastX>>0,u=r.y*s-r.lastY>>0;o+=c,n+=u,r.lastX+=c,r.lastY+=u,l&&(que.splice(i,1),i--)}h?window.scrollBy(o,n):(o&&(d.scrollLeft+=o),n&&(d.scrollTop+=n)),f||m||(que=[]),que.length?requestFrame(v,d,p/options.frameRate+1):pending=!1};requestFrame(v,d,0),pending=!0}}function wheel(e){initDone||init();var t=e.target,o=overflowingAncestor(t);if(!o||e.defaultPrevented||isNodeName(activeElement,"embed")||isNodeName(t,"embed")&&/\.pdf/i.test(t.src))return!0;var n=e.wheelDeltaX||0,i=e.wheelDeltaY||0;if(n||i||(i=e.wheelDelta||0),!options.touchpadSupport&&isTouchpad(i))return!0;1.2<Math.abs(n)&&(n*=options.stepSize/120),1.2<Math.abs(i)&&(i*=options.stepSize/120),scrollArray(o,-n,-i),e.preventDefault()}function keydown(e){var t=e.target,o=e.ctrlKey||e.altKey||e.metaKey||e.shiftKey&&e.keyCode!==key.spacebar;if(/input|textarea|select|embed/i.test(t.nodeName)||t.isContentEditable||e.defaultPrevented||o)return!0;if(isNodeName(t,"button")&&e.keyCode===key.spacebar)return!0;var n=0,i=0,r=overflowingAncestor(activeElement),a=r.clientHeight;switch(r==document.body&&(a=window.innerHeight),e.keyCode){case key.up:i=-options.arrowScroll;break;case key.down:i=options.arrowScroll;break;case key.spacebar:i=-(e.shiftKey?1:-1)*a*.9;break;case key.pageup:i=.9*-a;break;case key.pagedown:i=.9*a;break;case key.home:i=-r.scrollTop;break;case key.end:var l=r.scrollHeight-r.scrollTop-a;i=0<l?10+l:0;break;case key.left:n=-options.arrowScroll;break;case key.right:n=options.arrowScroll;break;default:return!0}scrollArray(r,n,i),e.preventDefault()}function mousedown(e){activeElement=e.target}var cache={};setInterval(function(){cache={}},1e4);var deltaBufferTimer,uniqueID=function(){var t=0;return function(e){return e.uniqueID||(e.uniqueID=t++)}}();function setCache(e,t){for(var o=e.length;o--;)cache[uniqueID(e[o])]=t;return t}function overflowingAncestor(e){var t=[],o=root.scrollHeight;do{var n=cache[uniqueID(e)];if(n)return setCache(t,n);if(t.push(e),o===e.scrollHeight){if(!isFrame||root.clientHeight+10<o)return setCache(t,document.body)}else if(e.clientHeight+10<e.scrollHeight&&(overflow=getComputedStyle(e,"").getPropertyValue("overflow-y"),"scroll"===overflow||"auto"===overflow))return setCache(t,e)}while(e=e.parentNode)}function addEvent(e,t,o){window.addEventListener(e,t,o||!1)}function removeEvent(e,t,o){window.removeEventListener(e,t,o||!1)}function isNodeName(e,t){return(e.nodeName||"").toLowerCase()===t.toLowerCase()}function directionCheck(e,t){e=0<e?1:-1,t=0<t?1:-1,direction.x===e&&direction.y===t||(direction.x=e,direction.y=t,que=[],lastScroll=0)}function isTouchpad(e){if(e){e=Math.abs(e),deltaBuffer.push(e),deltaBuffer.shift(),clearTimeout(deltaBufferTimer);var t=deltaBuffer[0]==deltaBuffer[1]&&deltaBuffer[1]==deltaBuffer[2],o=isDivisible(deltaBuffer[0],120)&&isDivisible(deltaBuffer[1],120)&&isDivisible(deltaBuffer[2],120);return!(t||o)}}function isDivisible(e,t){return Math.floor(e/t)==e/t}var requestFrame=window.requestAnimationFrame||window.webkitRequestAnimationFrame||function(e,t,o){window.setTimeout(e,o||1e3/60)},MutationObserver=window.MutationObserver||window.WebKitMutationObserver;function pulse_(e){var t;return((e*=options.pulseScale)<1?e-(1-Math.exp(-e)):(e-=1,(t=Math.exp(-1))+(1-Math.exp(-e))*(1-t)))*options.pulseNormalize}function pulse(e){return 1<=e?1:e<=0?0:(1==options.pulseNormalize&&(options.pulseNormalize/=pulse_(1)),pulse_(e))}addEvent("mousedown",mousedown),addEvent("mousewheel",wheel),addEvent("load",init);