| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263 |
- /**
- * Geometry.js: portable functions for querying window and document geometry
- *
- * This module defines functions for querying window and document geometry.
- *
- * getWindowX/Y(): return the position of the window on the screen
- * getViewportWidth/Height(): return the size of the browser viewport area
- * getDocumentWidth/Height(): return the size of the document.
- * getHorizontalScroll(): return the position of the horizontal scrollbar
- * getVerticalScroll(): return the position of the vertical scrollbar
- *
- * Note that there is no portable way to query the overall size of the
- * browser window, so there are no getWindowWidth/Height() functions.
- *
- * IMPORTANT: This module must be included in the <body> of a document
- * instead of the <head> of the document.
- */
- var Geometry = {};
- if (window.screenLeft) { // IE and others
- Geometry.getWindowX = function() { return window.screenLeft; };
- Geometry.getWindowY = function() { return window.screenTop; };
- }
- else if (window.screenX) { // Firefox and others
- Geometry.getWindowX = function() { return window.screenX; };
- Geometry.getWindowY = function() { return window.screenY; };
- }
- if (window.innerWidth) { // All browsers but IE
- Geometry.getViewportWidth = function() { return window.innerWidth; };
- Geometry.getViewportHeight = function() { return window.innerHeight; };
- Geometry.getHorizontalScroll = function() { return window.pageXOffset; };
- Geometry.getVerticalScroll = function() { return window.pageYOffset; };
- }
- else if (document.documentElement && document.documentElement.clientWidth) {
- // These functions are for IE6 when there is a DOCTYPE
- Geometry.getViewportWidth =
- function() { return document.documentElement.clientWidth; };
- Geometry.getViewportHeight =
- function() { return document.documentElement.clientHeight; };
- Geometry.getHorizontalScroll =
- function() { return document.documentElement.scrollLeft; };
- Geometry.getVerticalScroll =
- function() { return document.documentElement.scrollTop; };
- }
- else {//remove if condition by Ye
- // These are for IE4, IE5, and IE6 without a DOCTYPE
- try{
-
- Geometry.getViewportWidth =
- function() { return document.body.clientWidth; };
- Geometry.getViewportHeight =
- function() { return document.body.clientHeight; };
- Geometry.getHorizontalScroll =
- function() { return document.body.scrollLeft; };
- Geometry.getVerticalScroll =
- function() { return document.body.scrollTop; };
-
- }catch(e){
-
- }
- }
|