summaryrefslogtreecommitdiff
path: root/lib/position.js
diff options
context:
space:
mode:
Diffstat (limited to 'lib/position.js')
-rw-r--r--lib/position.js31
1 files changed, 31 insertions, 0 deletions
diff --git a/lib/position.js b/lib/position.js
new file mode 100644
index 000000000..29bb9a5ca
--- /dev/null
+++ b/lib/position.js
@@ -0,0 +1,31 @@
+/* http://textsnippets.com/posts/show/835 */
+
+Position.GetWindowSize = function(w) {
+ w = w ? w : window;
+ var width = w.innerWidth || (w.document.documentElement.clientWidth || w.document.body.clientWidth);
+ var height = w.innerHeight || (w.document.documentElement.clientHeight || w.document.body.clientHeight);
+ return [width, height]
+}
+
+/* http://textsnippets.com/posts/show/836 */
+
+Position.Center = function(element, parent) {
+ var w, h, pw, ph;
+ var d = Element.getDimensions(element);
+ w = d.width;
+ h = d.height;
+ Position.prepare();
+ if (!parent) {
+ var ws = Position.GetWindowSize();
+ pw = ws[0];
+ ph = ws[1];
+ } else {
+ pw = parent.offsetWidth;
+ ph = parent.offsetHeight;
+ }
+ element.style.top = (ph/2) - (h/2) - Position.deltaY + "px";
+ element.style.left = (pw/2) - (w/2) - Position.deltaX + "px";
+}
+
+
+