+++ /dev/null
-/*\r
- * xbDOM.js\r
- * $Revision: 1.2 $ $Date: 2003/02/07 16:04:18 $\r
- */\r
-\r
-/* ***** BEGIN LICENSE BLOCK *****\r
- * Version: MPL 1.1/GPL 2.0/LGPL 2.1\r
- *\r
- * The contents of this file are subject to the Mozilla Public License Version\r
- * 1.1 (the "License"); you may not use this file except in compliance with\r
- * the License. You may obtain a copy of the License at\r
- * http://www.mozilla.org/MPL/\r
- *\r
- * Software distributed under the License is distributed on an "AS IS" basis,\r
- * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License\r
- * for the specific language governing rights and limitations under the\r
- * License.\r
- *\r
- * The Original Code is Netscape code.\r
- *\r
- * The Initial Developer of the Original Code is\r
- * Netscape Corporation.\r
- * Portions created by the Initial Developer are Copyright (C) 2001\r
- * the Initial Developer. All Rights Reserved.\r
- *\r
- * Contributor(s): Bob Clary <bclary@netscape.com>\r
- *\r
- * ***** END LICENSE BLOCK ***** */\r
-\r
-function xbToInt(s)\r
-{\r
- var i = parseInt(s, 10);\r
- if (isNaN(i))\r
- i = 0;\r
-\r
- return i;\r
-}\r
-\r
-function xbGetWindowWidth(windowRef)\r
-{\r
- var width = 0;\r
-\r
- if (!windowRef)\r
- {\r
- windowRef = window;\r
- }\r
- \r
- if (typeof(windowRef.innerWidth) == 'number')\r
- {\r
- width = windowRef.innerWidth;\r
- }\r
- else if (windowRef.document.body && typeof(windowRef.document.body.clientWidth) == 'number')\r
- {\r
- width = windowRef.document.body.clientWidth; \r
- }\r
- \r
- return width;\r
-}\r
-\r
-function xbGetWindowHeight(windowRef)\r
-{\r
- var height = 0;\r
- \r
- if (!windowRef)\r
- {\r
- windowRef = window;\r
- }\r
-\r
- if (typeof(windowRef.innerWidth) == 'number')\r
- {\r
- height = windowRef.innerHeight;\r
- }\r
- else if (windowRef.document.body && typeof(windowRef.document.body.clientWidth) == 'number')\r
- {\r
- height = windowRef.document.body.clientHeight; \r
- }\r
- return height;\r
-}\r
-\r
-function xbGetElementsByNameAndType(name, type, windowRef)\r
-{\r
- if (!windowRef)\r
- windowRef = window;\r
-\r
- var elmlist = new Array();\r
-\r
- xbFindElementsByNameAndType(windowRef.document, name, type, elmlist);\r
-\r
- return elmlist;\r
-}\r
-\r
-function xbFindElementsByNameAndType(doc, name, type, elmlist)\r
-{\r
- var i;\r
- var subdoc;\r
- \r
- for (i = 0; i < doc[type].length; ++i)\r
- {\r
- if (doc[type][i].name && name == doc[type][i].name)\r
- {\r
- elmlist[elmlist.length] = doc[type][i];\r
- }\r
- }\r
-\r
- if (doc.layers)\r
- {\r
- for (i = 0; i < doc.layers.length; ++i)\r
- {\r
- subdoc = doc.layers[i].document;\r
- xbFindElementsByNameAndType(subdoc, name, type, elmlist);\r
- }\r
- }\r
-}\r
-\r
-if (document.layers)\r
-{\r
- nav4FindLayer =\r
- function (doc, id)\r
- {\r
- var i;\r
- var subdoc;\r
- var obj;\r
- \r
- for (i = 0; i < doc.layers.length; ++i)\r
- {\r
- if (doc.layers[i].id && id == doc.layers[i].id)\r
- return doc.layers[i];\r
- \r
- subdoc = doc.layers[i].document;\r
- obj = nav4FindLayer(subdoc, id);\r
- if (obj != null)\r
- return obj;\r
- }\r
- return null;\r
- }\r
-\r
- nav4FindElementsByName = \r
- function (doc, name, elmlist)\r
- {\r
- var i;\r
- var j;\r
- var subdoc;\r
- \r
- for (i = 0; i < doc.images.length; ++i)\r
- {\r
- if (doc.images[i].name && name == doc.images[i].name)\r
- {\r
- elmlist[elmlist.length] = doc.images[i];\r
- }\r
- }\r
-\r
- for (i = 0; i < doc.forms.length; ++i)\r
- {\r
- for (j = 0; j < doc.forms[i].elements.length; j++)\r
- {\r
- if (doc.forms[i].elements[j].name && name == doc.forms[i].elements[j].name)\r
- {\r
- elmlist[elmlist.length] = doc.forms[i].elements[j];\r
- }\r
- }\r
-\r
- if (doc.forms[i].name && name == doc.forms[i].name)\r
- {\r
- elmlist[elmlist.length] = doc.forms[i];\r
- }\r
- }\r
-\r
- for (i = 0; i < doc.anchors.length; ++i)\r
- {\r
- if (doc.anchors[i].name && name == doc.anchors[i].name)\r
- {\r
- elmlist[elmlist.length] = doc.anchors[i];\r
- }\r
- }\r
-\r
- for (i = 0; i < doc.links.length; ++i)\r
- {\r
- if (doc.links[i].name && name == doc.links[i].name)\r
- {\r
- elmlist[elmlist.length] = doc.links[i];\r
- }\r
- }\r
-\r
- for (i = 0; i < doc.applets.length; ++i)\r
- {\r
- if (doc.applets[i].name && name == doc.applets[i].name)\r
- {\r
- elmlist[elmlist.length] = doc.applets[i];\r
- }\r
- }\r
-\r
- for (i = 0; i < doc.embeds.length; ++i)\r
- {\r
- if (doc.embeds[i].name && name == doc.embeds[i].name)\r
- {\r
- elmlist[elmlist.length] = doc.embeds[i];\r
- }\r
- }\r
-\r
- for (i = 0; i < doc.layers.length; ++i)\r
- {\r
- if (doc.layers[i].name && name == doc.layers[i].name)\r
- {\r
- elmlist[elmlist.length] = doc.layers[i];\r
- }\r
- \r
- subdoc = doc.layers[i].document;\r
- nav4FindElementsByName(subdoc, name, elmlist);\r
- }\r
- }\r
-\r
- xbGetElementById = function (id, windowRef)\r
- {\r
- if (!windowRef)\r
- windowRef = window;\r
-\r
- return nav4FindLayer(windowRef.document, id);\r
- };\r
-\r
- xbGetElementsByName = function (name, windowRef)\r
- {\r
- if (!windowRef)\r
- windowRef = window;\r
-\r
- var elmlist = new Array();\r
-\r
- nav4FindElementsByName(windowRef.document, name, elmlist);\r
-\r
- return elmlist;\r
- };\r
-\r
-}\r
-else if (document.all)\r
-{\r
- xbGetElementById = \r
- function (id, windowRef) \r
- { \r
- if (!windowRef) \r
- {\r
- windowRef = window; \r
- }\r
- var elm = windowRef.document.all[id]; \r
- if (!elm) \r
- {\r
- elm = null; \r
- }\r
- return elm; \r
- };\r
-\r
- xbGetElementsByName = function (name, windowRef)\r
- {\r
- if (!windowRef)\r
- windowRef = window;\r
-\r
- var i;\r
- var idnamelist = windowRef.document.all[name];\r
- var elmlist = new Array();\r
-\r
- if (!idnamelist.length || idnamelist.name == name)\r
- {\r
- if (idnamelist)\r
- elmlist[elmlist.length] = idnamelist;\r
- }\r
- else\r
- {\r
- for (i = 0; i < idnamelist.length; i++)\r
- {\r
- if (idnamelist[i].name == name)\r
- elmlist[elmlist.length] = idnamelist[i];\r
- }\r
- }\r
-\r
- return elmlist;\r
- }\r
-\r
-}\r
-else if (document.getElementById)\r
-{\r
- xbGetElementById = \r
- function (id, windowRef) \r
- { \r
- if (!windowRef) \r
- {\r
- windowRef = window; \r
- }\r
- return windowRef.document.getElementById(id); \r
- };\r
-\r
- xbGetElementsByName = \r
- function (name, windowRef) \r
- { \r
- if (!windowRef) \r
- {\r
- windowRef = window; \r
- }\r
- return windowRef.document.getElementsByName(name); \r
- };\r
-}\r
-else \r
-{\r
- xbGetElementById = \r
- function (id, windowRef) \r
- { \r
- return null; \r
- };\r
-\r
- xbGetElementsByName = \r
- function (name, windowRef) \r
- { \r
- return new Array(); \r
- };\r
-}\r
-\r
-function xbGetPageScrollX(windowRef)\r
-{\r
- if (!windowRef) \r
- {\r
- windowRef = window; \r
- }\r
-\r
- if (typeof(windowRef.pageXOffset) == 'number')\r
- {\r
- return windowRef.pageXOffset;\r
- }\r
-\r
- if (typeof(windowRef.document.body && windowRef.document.body.scrollLeft) == 'number')\r
- {\r
- return windowRef.document.body.scrollLeft;\r
- }\r
-\r
- return 0;\r
-}\r
-\r
-function xbGetPageScrollY(windowRef)\r
-{\r
- if (!windowRef) \r
- {\r
- windowRef = window; \r
- }\r
-\r
- if (typeof(windowRef.pageYOffset) == 'number')\r
- {\r
- return windowRef.pageYOffset;\r
- }\r
-\r
- if (typeof(windowRef.document.body && windowRef.document.body.scrollTop) == 'number')\r
- {\r
- return windowRef.document.body.scrollTop;\r
- }\r
-\r
- return 0;\r
-}\r
-\r
-if (document.layers)\r
-{\r
- xbSetInnerHTML = \r
- function (element, str) \r
- { \r
- element.document.write(str); \r
- element.document.close(); \r
- };\r
-}\r
-else \r
-{\r
- xbSetInnerHTML = function (element, str) \r
- { \r
- if (typeof(element.innerHTML) != 'undefined') \r
- {\r
- element.innerHTML = str; \r
- }\r
- };\r
-}\r
-\r
-// eof: xbDOM.js\r