/
var
/
www
/
barefootlaw.org
/
wp-content
/
themes
/
archub
/
assets
/
js
/
liquid-mouse-pos
/
Upload File
HOME
!function($){"use strict";const s="liquidMousePos";let t={basedOnElement:!0,addPosAsCSS:!0};class e{constructor(e,o){this._defaults=t,this._name=s,this.options={...t,...o},this.DOM={},this.DOM.element=e,this.DOM.$element=$(e),this.mousex=0,this.mousey=0,this.events(),this.addPosAsCSS()}events(){this.DOM.$element.on("mousemove.lqdGetMousePos",this.getMousePos.bind(this))}getMousePos(s){if(s||(s=window.event),s.pageX||s.pageY?(this.mousex=s.pageX,this.mousey=s.pageY):(s.clientX||s.clientY)&&(this.mousex=s.clientX+document.body.scrollLeft+document.documentElement.scrollLeft,this.mousey=s.clientY+document.body.scrollTop+document.documentElement.scrollTop),this.options.basedOnElement){const s=this.DOM.element.getBoundingClientRect();this.mousex=this.mousex-s.left-window.scrollX,this.mousey=this.mousey-s.top-window.scrollY}}addPosAsCSS(){if(!this.options.addPosAsCSS)return;const s={x:window.innerWidth/2,y:window.innerHeight/2},t=gsap.quickSetter(this.DOM.element,"css"),e=gsap.quickSetter(this.DOM.element,"css");gsap.ticker.add((()=>{const o=.15,i=1-Math.pow(.85,gsap.ticker.deltaRatio());s.x+=(this.mousex-s.x)*i,s.y+=(this.mousey-s.y)*i,t({"--lqd-mousex":`${s.x}px`}),e({"--lqd-mousey":`${s.y}px`})}))}destroy(){}}$.fn[s]=function(t){return this.each((function(){const o={...$(this).data("mouse-pos-options"),...t};$.data(this,"plugin_"+s)||$.data(this,"plugin_"+s,new e(this,o))}))}}(jQuery),jQuery(document).ready((function($){$("[data-lqd-mouse-pos]").liquidMousePos()}));