Subversion Repositories JSX

Compare Revisions

Last modification

Ignore whitespace Rev 484 → Rev 485

/trunk/dom.js
155,201 → 155,208
 
jsx.dom.hasDocumentLayers = false;
 
jsx.dom.getElemByName = jsx.dom.gEBN = (function () {
function dummy()
{
return null;
}
jsx.dom.getElementsByName = jsx.dom.getElemByName = jsx.dom.gEBN = (
function () {
function dummy()
{
return null;
}
 
if (typeof document == "undefined")
{
return dummy;
}
if (typeof document == "undefined")
{
return dummy;
}
 
if (jsx.object.isMethod(document, "getElementsByName"))
{
/* W3C DOM Level 2 HTML */
/**
* @param {string} sName
* @param {number} index (optional)
* @return Element|Layer|Null|Undefined
*/
return function (sName, index) {
var result = document.getElementsByName(sName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
return result;
};
}
else if (jsx.dom.hasDocumentAll)
{
/* IE4 DOM */
return function (sName, index) {
var result = document.all(sName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
return result;
};
}
else if ((jsx.dom.hasDocumentLayers = (typeof document.layers == "object")))
{
/* NN4 DOM */
return function (sName, index) {
var result = document.layers[sName];
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
return result;
};
}
if (jsx.object.isMethod(document, "getElementsByName"))
{
/* W3C DOM Level 2 HTML */
/**
* @param {string} sName
* @param {number} index (optional)
* @return Element|Layer|Null|Undefined
*/
return function (sName, index) {
var result = document.getElementsByName(sName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
 
return dummy;
}());
return result;
};
}
else if (jsx.dom.hasDocumentAll)
{
/* IE4 DOM */
return function (sName, index) {
var result = document.all(sName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
 
return result;
};
}
else if ((jsx.dom.hasDocumentLayers = (typeof document.layers == "object")))
{
/* NN4 DOM */
return function (sName, index) {
var result = document.layers[sName];
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
 
return result;
};
}
 
return dummy;
}()
);
 
jsx.dom.hasGetElementsByTagName = false;
 
jsx.dom.getElemByTagName = jsx.dom.gEBTN = (function () {
var jsx_object = jsx.object;
jsx.dom.getElementsByTagName = jsx.dom.getElemByTagName = jsx.dom.gEBTN = (
function () {
var jsx_object = jsx.object;
 
if (jsx_object.isMethod(jsx, "xpath", "evaluate"))
{
/* W3C DOM Level 3 XPath */
/**
* @param {string} sTagName
* @param {number} index (optional)
* @param {Element} oContextNode (optional)
* @return {Array|Element}
* An <code>Array</code> of references to objects representing
* matching elements, or one reference to such an object if
* <var>index</var> was provided.
*/
return function (sTagName, index, oContextNode) {
if (!sTagName)
{
sTagName = '*';
}
if (jsx_object.isNativeMethod(jsx, "xpath", "evaluate"))
{
/* W3C DOM Level 3 XPath */
/**
* @param {string} sTagName
* @param {number} index (optional)
* @param {Element} oContextNode (optional)
* @return {Array|Element}
* An <code>Array</code> of references to objects representing
* matching elements, or one reference to such an object if
* <var>index</var> was provided.
*/
return function (sTagName, index, oContextNode) {
if (!sTagName)
{
sTagName = '*';
}
 
if (arguments.length > 2 && typeof index != "number")
{
var tmp = oContextNode;
oContextNode = index;
index = tmp;
}
if (arguments.length > 2 && typeof index != "number")
{
var tmp = oContextNode;
oContextNode = index;
index = tmp;
}
 
var result = jsx.dom.xpath.evaluate('.//' + sTagName, oContextNode || null,
null, XPathResult.ORDERED_NODE_ITERATOR_TYPE);
var result = jsx.dom.xpath.evaluate('.//' + sTagName, oContextNode || null,
null, XPathResult.ORDERED_NODE_ITERATOR_TYPE);
 
if (result)
{
if (!isNaN(index) && index > -1)
if (result)
{
result = result[index];
if (!isNaN(index) && index > -1)
{
result = result[index];
}
}
}
 
return result;
};
}
return result;
};
}
 
if ((jsx.dom.hasGetElementsByTagName =
(typeof document != "undefined"
&& jsx_object.isMethod(document, "getElementsByTagName"))))
{
/* W3C DOM Level 2 Core */
/**
* @param {string} sTagName
* @param {number} index (optional)
* @param {Element} oContextNode (optional)
* @return {NodeList|Element|Null}
* An <code>NodeList</code> of references to objects representing
* matching elements, or one reference to such an object if
* <var>index</var> was provided; <code>null</code> if there
* is no matching element.
*/
return function (sTagName, index, oContextNode) {
if (!sTagName)
{
sTagName = '*';
}
if ((jsx.dom.hasGetElementsByTagName =
(typeof document != "undefined"
&& jsx_object.isMethod(document, "getElementsByTagName"))))
{
/* W3C DOM Level 2 Core */
/**
* @param {string} sTagName
* @param {number} index (optional)
* @param {Element} oContextNode (optional)
* @return {NodeList|Element|Null}
* An <code>NodeList</code> of references to objects representing
* matching elements, or one reference to such an object if
* <var>index</var> was provided; <code>null</code> if there
* is no matching element.
*/
return function (sTagName, index, oContextNode) {
if (!sTagName)
{
sTagName = '*';
}
 
if (arguments.length > 2 && typeof index != "number")
{
var tmp = oContextNode;
oContextNode = index;
index = tmp;
}
if (arguments.length > 2 && typeof index != "number")
{
var tmp = oContextNode;
oContextNode = index;
index = tmp;
}
 
if (!oContextNode)
{
oContextNode = document;
}
if (!oContextNode)
{
oContextNode = document;
}
 
if (!jsx_object.isMethod(oContextNode, "getElementsByTagName"))
{
return null;
}
if (!jsx_object.isMethod(oContextNode, "getElementsByTagName"))
{
return null;
}
 
var result = oContextNode.getElementsByTagName(sTagName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
var result = oContextNode.getElementsByTagName(sTagName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
 
return result;
};
}
return result;
};
}
 
if (jsx.dom.hasDocumentAll && isMethod(document.all, "tags"))
{
/**
* @param {string} sTagName
* @param {number} index (optional)
* @param {Element} oContextNode (optional)
* @return {NodeList|Element|Undefined}
* An <code>NodeList</code> of references to objects representing
* matching elements, or one reference to such an object if
* <var>index</var> was provided; <code>null</code>
* if there is no matching element.
*/
return function (sTagName, index, oContextNode) {
if (arguments.length > 2 && typeof index != "number")
{
var tmp = oContextNode;
oContextNode = index;
index = tmp;
}
if (jsx.dom.hasDocumentAll && isMethod(document.all, "tags"))
{
/**
* @param {string} sTagName
* @param {number} index (optional)
* @param {Element} oContextNode (optional)
* @return {NodeList|Element|Undefined}
* An <code>NodeList</code> of references to objects representing
* matching elements, or one reference to such an object if
* <var>index</var> was provided; <code>null</code>
* if there is no matching element.
*/
return function (sTagName, index, oContextNode) {
if (arguments.length > 2 && typeof index != "number")
{
var tmp = oContextNode;
oContextNode = index;
index = tmp;
}
 
if (!oContextNode)
{
oContextNode = document;
}
if (!oContextNode)
{
oContextNode = document;
}
 
if (!jsx.object.isMethod(oContextNode, "all", "tags"))
{
return null;
}
if (!jsx.object.isMethod(oContextNode, "all", "tags"))
{
return null;
}
 
var result = oContextNode.all.tags(sTagName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
var result = oContextNode.all.tags(sTagName);
if (result && !isNaN(index) && index > -1)
{
result = result[index];
}
 
return result;
return result;
};
}
 
return function () {
return null;
};
}
}()
);
 
return function () {
return null;
};
}());
 
jsx.dom.getElemByIndex = jsx.dom.gEBIdx = (function () {
jsx.dom.getElementByIndex = jsx.dom.getElemByIndex = jsx.dom.gEBIdx = (function () {
function dummy()
{
return null;