xmldoc.js

来自「在Web的脚本上专门处理一些通用的 JavaScript对象」· JavaScript 代码 · 共 94 行

JS
94
字号
// Description:	js.util.XmlDoc
// Author:	HuangYiGang
// Version:	2005.12.04.01

function js.util.XmlDoc(){}
js.util.XmlDoc.XmlDocProgID = null;
js.util.XmlDoc.XslTemProgID = null;
js.util.XmlDoc.FreeThreadedProgID = null;
js.util.XmlDoc.MSXMLDOC = ["Microsoft.XMLDOM"];
js.util.XmlDoc.MSXSLTEM = ["MSXML2.XSLTemplate"];
js.util.XmlDoc.MSFREEDOM = ["MSXML2.FreeThreadedDOMDocument"];
js.util.XmlDoc.Create = function() {
	req = false;
	if ( window.ActiveXObject ) {
		try{
			if ( !XmlDoc.XmlDocProgID ){
				for( var n = 0; n < XmlDoc.MSXMLDOC.length; n++ ){
					try {
						req = new ActiveXObject( XmlDoc.MSXMLDOC[n] );
						XmlDoc.XmlDocProgID = XmlDoc.MSXMLDOC[n];
						break;
					} catch(e) {
						req = false;
					}
				}
			}else{
				req = new ActiveXObject(XmlDoc.XmlDocProgID);
			}
		} catch(e) {
			req = false;
		}
	}
	if(req) return req;
	else throw "XmlDoc/XmlDoc.Create:your computer nonsupport XMLDOC";
};
js.util.XmlDoc.Transform = function(o_XmlDoc, s_XslUrl){
	var o_Free = XmlDoc.CreateFreeThreaded();
	o_Free.async = "false";
    o_Free.load(s_XslUrl);
    var o_XslTem = XmlDoc.CreateXSLTemplate();
    o_XslTem.stylesheet = o_Free;
    var o_Processor = o_XslTem.createProcessor();
    o_Processor.input = o_XmlDoc;
    o_Processor.transform();
    return o_Processor.output;
}
js.util.XmlDoc.CreateXSLTemplate = function() {
	req = false;
	if ( window.ActiveXObject ) {
		try{
			if ( !XmlDoc.XslTemProgID ){
				for( var n = 0; n < XmlDoc.MSXSLTEM.length; n++ ){
					try {
						req = new ActiveXObject( XmlDoc.MSXSLTEM[n] );
						XmlDoc.XslTemProgID = XmlDoc.MSXSLTEM[n];
						break;
					} catch(e) {
						req = false;
					}
				}
			}else{
				req = new ActiveXObject(XmlDoc.XslTemProgID);
			}
		} catch(e) {
			req = false;
		}
	}
	if(req) return req;
	else throw "XmlDoc/XmlDoc.CreateXSLTemplate:your computer nonsupport XSLTEMPLATE";
};
js.util.XmlDoc.CreateFreeThreaded = function() {
	req = false;
	if ( window.ActiveXObject ) {
		try{
			if ( !XmlDoc.FreeThreadedProgID ){
				for( var n = 0; n < XmlDoc.MSFREEDOM.length; n++ ){
					try {
						req = new ActiveXObject( XmlDoc.MSFREEDOM[n] );
						XmlDoc.FreeThreadedProgID = XmlDoc.MSFREEDOM[n];
						break;
					} catch(e) {
						req = false;
					}
				}
			}else{
				req = new ActiveXObject(XmlDoc.FreeThreadedProgID);
			}
		} catch(e) {
			req = false;
		}
	}
	if(req) return req;
	else throw "XmlDoc/XmlDoc.CreateFreeThreaded:your computer nonsupport FreeThreadedDOMDocument";
};

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?