📄 xmldom.js
字号:
function class_element( node )
{
this.Value = "";
this.Text = "";
this.tagName = node.nodeName;
this.object = node;
try
{
this.Value = node.childNodes.item(0).nodeValue;
this.Text = node.childNodes.item(0).nodeValue;
}catch(e){}
this.attributes = new Array();
this.subitems = new Array();
if ( this.object.attributes != null )
{
for ( var i = 0; i < this.object.attributes.length ; i ++ )
{
var key = this.object.attributes.item(i).nodeName;
var val = this.object.attributes.item(i).nodeValue;
this.attributes[key] = val;
}
}
if ( this.object.childNodes != null )
{
for ( var i = 0; i < this.object.childNodes.length ; i ++ )
{
var key = this.object.childNodes.item(i).nodeName;
var val = this.object.childNodes.item(i).text != null ? this.object.childNodes.item(i).text : this.object.childNodes.item(i).textContent;
this.subitems[key] = val;
}
}
}
function class_xmldom( xmldata,xmltext )
{
this.doc = xmldata;
try
{
this.dom = new ActiveXObject("Microsoft.XMLDOM");
}catch(e){}
var Cutsom = this.dom == null;
if ( !Cutsom )
{
this.dom.loadXML(xmltext);
}
this.selectNodes = function ( xpath )
{
if( Cutsom )
{
var paths = xpath.split("/");
var node = this.doc;
for ( var i = 1; i < paths.length - 1; i ++ )
{
//找出各层节点
var subnode = this.queryNode( paths[i],node );
if ( subnode != null )
{
node = subnode;
}else
{
break;
}
}
return this.queryNodes( paths[ paths.length - 1 ],node );
}else
{
var nodes = new Array();
var ii = 0;
var list = this.dom.selectNodes(xpath);
for ( var i = 0; i < list.length; i ++ )
{
nodes[ii] = new class_element(list.item(i));
ii += 1;
}
return nodes;
}
}
this.selectSingleNode = function ( xpath )
{
var paths = xpath.split("/");
var node = this.doc;
for ( var i = 1; i < paths.length - 1; i ++ )
{
//找出各层节点
var subnode = this.queryNode( paths[i],node );
if ( subnode != null )
{
node = subnode;
}else
{
break;
}
}
var rnode = this.queryNode( paths[ paths.length - 1 ],node );
if ( rnode != null )
{
return new class_element(rnode);
}else
{
return rnode;
}
}
this.queryNode = function ( name,node )
{
for ( var i = 0; i < node.childNodes.length ; i ++ )
{
var rnode = node.childNodes.item(i);
if ( rnode != null && rnode.nodeName == name )
{
return rnode;
}
}
}
this.queryNodes = function ( name,node )
{
var rnode = null;
var nodes = new Array();
var ii = 0;
for ( var i = 0; i < node.childNodes.length ; i ++ )
{
rnode = node.childNodes.item(i);
if( rnode != null && rnode.nodeName == name )
{
nodes[ii] = new class_element(rnode);
ii = ii + 1;
}
}
return nodes;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -