⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 controls.js

📁 Ajax最流行书籍
💻 JS
字号:
xoad.controls = {};xoad.controls.list = [];xoad.controls.parsedControls = [];xoad.controls.parseInterval = 1000;xoad.controls.pageLoaded = false;xoad.controls.observers = [];xoad.controls.getAttribute = function(element, attribute, defaultValue){	var attributeValue = null;	try {		attributeValue = element.getAttribute(attribute);	} catch (e) {}	if (	((attributeValue == null) || (attributeValue.length < 1)) &&	(typeof(defaultValue) != 'undefined')) {		attributeValue = defaultValue;	}	return attributeValue;};xoad.controls.getAttributeNS = function(element, attribute, namespace, defaultValue){	var attributeValue = null;	try {		attributeValue = element.getAttribute(attribute);	} catch (e) {}	if (	((attributeValue == null) || (attributeValue.length < 1)) &&	(typeof(element.getAttributeNS) == 'function')) {		if (		(typeof(namespace) == 'undefined') ||		(namespace == null)) {			namespace = 'http://www.xoad.org/controls';		}		try {			attributeValue = element.getAttributeNS(namespace, attribute.substring(attribute.indexOf(':') + 1));		} catch (e) {}	}	if (	((attributeValue == null) || (attributeValue.length < 1)) &&	(typeof(defaultValue) != 'undefined')) {		attributeValue = defaultValue;	}	return attributeValue;};xoad.controls.initializeControl = function(control, element, parentElement, controlData){	control.element = element;	control.parentElement = parentElement;	control.controlData = controlData;	if (typeof(controlData.serverClass) != 'undefined') {		try {			eval('control.serverObject = new ' + controlData.serverClass + '();');		} catch (e) {};	}	control.getAttribute = function(attribute, defaultValue) {		return xoad.controls.getAttribute(this.element, attribute, defaultValue);	};	control.getAttributeNS = function(attribute, namespace, defaultValue) {		return xoad.controls.getAttributeNS(this.element, attribute, namespace, defaultValue);	};	control.bindStyle = function(styleKey, defaultValue) {		eval(		'if ('		+ '(typeof(this.element.style.' + styleKey + ') == "undefined") ||'		+ '(this.element.style.' + styleKey + ' == null) ||'		+ '(this.element.style.' + styleKey + '.toString().length < 1)) {'		+ 'this.element.style.' + styleKey + ' = this.getAttribute("' + styleKey + '", defaultValue);'		+ '}');	};	if (xoad.controls.notifyObservers('controlInit', control)) {		if (typeof(control.OnInit) == 'function') {			control.OnInit();		}	}	if (xoad.controls.pageLoaded) {		if (xoad.controls.notifyObservers('controlLoad', control)) {			if (typeof(control.OnLoad) == 'function') {				control.OnLoad();			}		}	}};xoad.controls.createControl = function(element, parentElement, controlData){	try {		eval('var control = new ' + controlData.clientClass + '(element, controlData);');		if (xoad.controls.notifyObservers('controlCreated', control)) {			xoad.controls.initializeControl(control, element, parentElement, controlData);			xoad.controls.parsedControls[xoad.controls.parsedControls.length] = control;			return control;		}	} catch (e) {};	return null;};xoad.controls.parseControls = function(root){	if (typeof(root) == 'undefined') {		root = document;	}	if (typeof(root.childNodes) != 'undefined') {		for (var iterator = 0; iterator < root.childNodes.length; iterator ++) {			var child = root.childNodes[iterator];			if (			(typeof(child.tagName) != 'undefined') &&			(typeof(child.__xoad_parsedControl) == 'undefined')) {				if (				(typeof(child.childNodes) != 'undefined') &&				(child.childNodes.length > 0)) {					xoad.controls.parseControls(child);				}				var tagName = child.tagName.toLowerCase();				if (typeof(child.scopeName) != 'undefined') {					tagName = child.scopeName.toLowerCase() + ':' + tagName;					if (tagName.substr(0, 5) == 'html:') {						tagName = tagName.substr(5);					}				}				if (xoad.controls.notifyObservers('elementParse', child, tagName)) {					for (var listIterator = 0; listIterator < xoad.controls.list.length; listIterator ++) {						if (xoad.controls.list[listIterator].tagName == tagName) {							child.attachedControl = xoad.controls.createControl(child, root, xoad.controls.list[listIterator]);						}					}				}				child.__xoad_parsedControl = true;			}		}	}};xoad.controls.onPageLoad = function(){	if (typeof(xoad.controls.parseIntervalId) != 'undefined') {		window.clearInterval(xoad.controls.parseIntervalId);	}	xoad.controls.parseControls();	xoad.controls.pageLoaded = true;	for (var iterator = 0; iterator < xoad.controls.parsedControls.length; iterator ++) {		var control = xoad.controls.parsedControls[iterator];		if (xoad.controls.notifyObservers('controlLoad', control)) {			if (typeof(control.OnLoad) == 'function') {				control.OnLoad();			}		}	}};xoad.controls.onPageUnload = function(){	for (var iterator = 0; iterator < xoad.controls.parsedControls.length; iterator ++) {		var control = xoad.controls.parsedControls[iterator];		if (xoad.controls.notifyObservers('controlUnload', control)) {			if (typeof(control.OnUnload) == 'function') {				control.OnUnload();			}		}	}};xoad.controls.addObserver = function(observer){	xoad.controls.observers[xoad.controls.observers.length] = observer;	return true;};xoad.controls.notifyObservers = function(event){	if (xoad.controls.observers.length < 1) {		return true;	}	var eventMethod = 'on' + event.charAt(0).toUpperCase() + event.substr(1);	var notifyArguments = [];	var iterator = 0;	for (iterator = 1; iterator < arguments.length; iterator ++) {		notifyArguments[notifyArguments.length] = arguments[iterator];	}	for (iterator = 0; iterator < xoad.controls.observers.length; iterator ++) {		xoad.invokeMethod(xoad.controls.observers[iterator], eventMethod, notifyArguments);	}	return true;};xoad.controls.parseIntervalId = window.setInterval('xoad.controls.parseControls()', xoad.controls.parseInterval);if (document.all) {	window.attachEvent('onload', xoad.controls.onPageLoad);	window.attachEvent('onunload', xoad.controls.onPageUnload);} else {	window.addEventListener('load', xoad.controls.onPageLoad, true);	window.addEventListener('unload', xoad.controls.onPageUnload, true);}

⌨️ 快捷键说明

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