function getBounds(element){var left=element.offsetLeft;var top=element.offsetTop;for(var parent=element.offsetParent;parent;parent=parent.offsetParent){left+=parent.offsetLeft;top+=parent.offsetTop;}
return{left:left,top:top,width:element.offsetWidth,height:element.offsetHeight};}
function mouseCoords(ev){if(ev.pageX||ev.pageY){return{x:ev.pageX,y:ev.pageY};}
var docBody=document.documentElement?document.documentElement:document.body;return{x:ev.clientX+docBody.scrollLeft-docBody.clientLeft,y:ev.clientY+docBody.scrollTop-docBody.clientTop};}
viewport={getWinWidth:function(){this.width=0;if(window.innerWidth)this.width=window.innerWidth-18;else if(document.documentElement&&document.documentElement.clientWidth)
this.width=document.documentElement.clientWidth;else if(document.body&&document.body.clientWidth)
this.width=document.body.clientWidth;},getWinHeight:function(){this.height=0;if(window.innerHeight)this.height=window.innerHeight-18;else if(document.documentElement&&document.documentElement.clientHeight)
this.height=document.documentElement.clientHeight;else if(document.body&&document.body.clientHeight)
this.height=document.body.clientHeight;},getScrollX:function(){this.scrollX=0;if(typeof window.pageXOffset=="number")this.scrollX=window.pageXOffset;else if(document.documentElement&&document.documentElement.scrollLeft)
this.scrollX=document.documentElement.scrollLeft;else if(document.body&&document.body.scrollLeft)
this.scrollX=document.body.scrollLeft;else if(window.scrollX)this.scrollX=window.scrollX;},getScrollY:function(){this.scrollY=0;if(typeof window.pageYOffset=="number")this.scrollY=window.pageYOffset;else if(document.documentElement&&document.documentElement.scrollTop)
this.scrollY=document.documentElement.scrollTop;else if(document.body&&document.body.scrollTop)
this.scrollY=document.body.scrollTop;else if(window.scrollY)this.scrollY=window.scrollY;},getAll:function(){this.getWinWidth();this.getWinHeight();this.getScrollX();this.getScrollY();}}

