clipbucket/upload/js/jquery_plugs/compressed/utils.js
2013-10-07 12:17:06 +00:00

1 line
No EOL
5.3 KiB
JavaScript

(function($){EYE.extend({getPosition:function(e,forceIt){var x=0;var y=0;var es=e.style;var restoreStyles=false;if(forceIt&&jQuery.curCSS(e,'display')=='none'){var oldVisibility=es.visibility;var oldPosition=es.position;restoreStyles=true;es.visibility='hidden';es.display='block';es.position='absolute'}var el=e;if(el.getBoundingClientRect){var box=el.getBoundingClientRect();x=box.left+Math.max(document.documentElement.scrollLeft,document.body.scrollLeft)-2;y=box.top+Math.max(document.documentElement.scrollTop,document.body.scrollTop)-2}else{x=el.offsetLeft;y=el.offsetTop;el=el.offsetParent;if(e!=el){while(el){x+=el.offsetLeft;y+=el.offsetTop;el=el.offsetParent}}if(jQuery.browser.safari&&jQuery.curCSS(e,'position')=='absolute'){x-=document.body.offsetLeft;y-=document.body.offsetTop}el=e.parentNode;while(el&&el.tagName.toUpperCase()!='BODY'&&el.tagName.toUpperCase()!='HTML'){if(jQuery.curCSS(el,'display')!='inline'){x-=el.scrollLeft;y-=el.scrollTop}el=el.parentNode}}if(restoreStyles==true){es.display='none';es.position=oldPosition;es.visibility=oldVisibility}return{x:x,y:y}},getSize:function(e){var w=parseInt(jQuery.curCSS(e,'width'),10);var h=parseInt(jQuery.curCSS(e,'height'),10);var wb=0;var hb=0;if(jQuery.curCSS(e,'display')!='none'){wb=e.offsetWidth;hb=e.offsetHeight}else{var es=e.style;var oldVisibility=es.visibility;var oldPosition=es.position;es.visibility='hidden';es.display='block';es.position='absolute';wb=e.offsetWidth;hb=e.offsetHeight;es.display='none';es.position=oldPosition;es.visibility=oldVisibility}return{w:w,h:h,wb:wb,hb:hb}},getClient:function(e){var h,w;if(e){w=e.clientWidth;h=e.clientHeight}else{var de=document.documentElement;w=window.innerWidth||self.innerWidth||(de&&de.clientWidth)||document.body.clientWidth;h=window.innerHeight||self.innerHeight||(de&&de.clientHeight)||document.body.clientHeight}return{w:w,h:h}},getScroll:function(e){var t=0,l=0,w=0,h=0,iw=0,ih=0;if(e&&e.nodeName.toLowerCase()!='body'){t=e.scrollTop;l=e.scrollLeft;w=e.scrollWidth;h=e.scrollHeight}else{if(document.documentElement){t=document.documentElement.scrollTop;l=document.documentElement.scrollLeft;w=document.documentElement.scrollWidth;h=document.documentElement.scrollHeight}else if(document.body){t=document.body.scrollTop;l=document.body.scrollLeft;w=document.body.scrollWidth;h=document.body.scrollHeight}if(typeof pageYOffset!='undefined'){t=pageYOffset;l=pageXOffset}iw=self.innerWidth||document.documentElement.clientWidth||document.body.clientWidth||0;ih=self.innerHeight||document.documentElement.clientHeight||document.body.clientHeight||0}return{t:t,l:l,w:w,h:h,iw:iw,ih:ih}},getMargins:function(e,toInteger){var t=jQuery.curCSS(e,'marginTop')||'';var r=jQuery.curCSS(e,'marginRight')||'';var b=jQuery.curCSS(e,'marginBottom')||'';var l=jQuery.curCSS(e,'marginLeft')||'';if(toInteger)return{t:parseInt(t,10)||0,r:parseInt(r,10)||0,b:parseInt(b,10)||0,l:parseInt(l,10)};else return{t:t,r:r,b:b,l:l}},getPadding:function(e,toInteger){var t=jQuery.curCSS(e,'paddingTop')||'';var r=jQuery.curCSS(e,'paddingRight')||'';var b=jQuery.curCSS(e,'paddingBottom')||'';var l=jQuery.curCSS(e,'paddingLeft')||'';if(toInteger)return{t:parseInt(t,10)||0,r:parseInt(r,10)||0,b:parseInt(b,10)||0,l:parseInt(l,10)};else return{t:t,r:r,b:b,l:l}},getBorder:function(e,toInteger){var t=jQuery.curCSS(e,'borderTopWidth')||'';var r=jQuery.curCSS(e,'borderRightWidth')||'';var b=jQuery.curCSS(e,'borderBottomWidth')||'';var l=jQuery.curCSS(e,'borderLeftWidth')||'';if(toInteger)return{t:parseInt(t,10)||0,r:parseInt(r,10)||0,b:parseInt(b,10)||0,l:parseInt(l,10)||0};else return{t:t,r:r,b:b,l:l}},traverseDOM:function(nodeEl,func){func(nodeEl);nodeEl=nodeEl.firstChild;while(nodeEl){EYE.traverseDOM(nodeEl,func);nodeEl=nodeEl.nextSibling}},getInnerWidth:function(el,scroll){var offsetW=el.offsetWidth;return scroll?Math.max(el.scrollWidth,offsetW)-offsetW+el.clientWidth:el.clientWidth},getInnerHeight:function(el,scroll){var offsetH=el.offsetHeight;return scroll?Math.max(el.scrollHeight,offsetH)-offsetH+el.clientHeight:el.clientHeight},getExtraWidth:function(el){if($.boxModel)return(parseInt($.curCSS(el,'paddingLeft'))||0)+(parseInt($.curCSS(el,'paddingRight'))||0)+(parseInt($.curCSS(el,'borderLeftWidth'))||0)+(parseInt($.curCSS(el,'borderRightWidth'))||0);return 0},getExtraHeight:function(el){if($.boxModel)return(parseInt($.curCSS(el,'paddingTop'))||0)+(parseInt($.curCSS(el,'paddingBottom'))||0)+(parseInt($.curCSS(el,'borderTopWidth'))||0)+(parseInt($.curCSS(el,'borderBottomWidth'))||0);return 0},isChildOf:function(parentEl,el,container){if(parentEl==el){return true}if(!el||!el.nodeType||el.nodeType!=1){return false}if(parentEl.contains&&!$.browser.safari){return parentEl.contains(el)}if(parentEl.compareDocumentPosition){return!!(parentEl.compareDocumentPosition(el)&16)}var prEl=el.parentNode;while(prEl&&prEl!=container){if(prEl==parentEl)return true;prEl=prEl.parentNode}return false},centerEl:function(el,axis){var clientScroll=EYE.getScroll();var size=EYE.getSize(el);if(!axis||axis=='vertically')$(el).css({top:clientScroll.t+((Math.min(clientScroll.h,clientScroll.ih)-size.hb)/2)+'px'});if(!axis||axis=='horizontally')$(el).css({left:clientScroll.l+((Math.min(clientScroll.w,clientScroll.iw)-size.wb)/2)+'px'})}});if(!$.easing.easeout){$.easing.easeout=function(p,n,firstNum,delta,duration){return-delta*((n=n/duration-1)*n*n*n-1)+firstNum}}})(jQuery);