/***
* ModTree - Module-Based PHP Framework
* (c) Sebastian Bojanowski ( sbojanowski (at) gmail (dot) com )
* Screen Dimensions Script
***/
var ScreenSize = { getViewWidth : function () { if (self.innerWith)
return self.innerWidth; else if (document.documentElement && document.documentElement.clientWidth)
return document.documentElement.clientWidth; else if (document.body)
return document.body.clientWidth; else
return 0;}, getViewHeight : function () { if (self.innerHeight)
return self.innerHeight; else if (document.documentElement && document.documentElement.clientHeight)
return document.documentElement.clientHeight; else if (document.body)
return document.body.clientHeight; else
return 0;}, getViewSize : function () { return new ScreenSize.Size(this.getViewWidth(),this.getViewHeight());}, getPageWidth : function() { var width,viewWidth = this.getViewWidth(); if (document.body.scrollWidth > document.body.offsetWidth)
width = document.body.scrollWidth; else
width = document.body.offsetWidth; if (width < viewWidth)
return viewWidth; else
return width;}, getPageHeight : function() { var height,viewHeight = this.getViewHeight(); if (document.body.scrollHeight > document.body.offsetHeight)
height = document.body.scrollHeight; else
height = document.body.offsetHeight; if (height < viewHeight)
return viewHeight; else
return height;}, getPageSize : function() { return new ScreenSize.Size(this.getPageWidth(),this.getPageHeight());}, getScrollX : function() { if (document.documentElement && document.documentElement.scrollLeft)
return document.documentElement.scrollLeft; else if (document.body)
return document.body.scrollLeft; else
return 0;}, getScrollY : function() { if (document.documentElement && document.documentElement.scrollTop)
return document.documentElement.scrollTop; else if (document.body)
return document.body.scrollTop
else
return 0;}, getElementSize : function(element) { if (typeof element != 'undefined')
if (element.style != 'undefined')
return new ScreenSize.Size(element.style.width,element.style.height); else
return null;}, setPosition : function (element,x,y) { if (typeof element != 'undefined')
if (element.style != 'undefined') { element.style.left = x + 'px'; element.style.top = y + 'px';}
}, setCenterPosition : function (element) { var x,y,elementSize = this.getElementSize(element); if (elementSize !== null) { x = this.getScrollX() + this.getViewWidth()/2 - elementSize.getWidth()/2; y = this.getScrollY() + this.getViewHeight()/2 - elementSize.getHeight()/2; this.setPosition(element,x,y);}
}
}
ScreenSize.Size = function(width,height) { this.width = width; this.height = height;}
ScreenSize.Size.prototype = { getWidth : function() { return this.width;}, getHeight : function() { return this.height;}
}