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

📄 treeadapter.js

📁 这是一个ajax的例子大家好好的看看就是一个鱼眼的效果
💻 JS
字号:
if(!dojo._hasResource["dojox.wire.TreeAdapter"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.dojo._hasResource["dojox.wire.TreeAdapter"] = true;dojo.provide("dojox.wire.TreeAdapter");dojo.require("dojox.wire.CompositeWire");dojo.declare("dojox.wire.TreeAdapter", dojox.wire.CompositeWire, {	//	summary:	//		A composite Wire for tree nodes	//	description:	//		This class has multiple child Wires for tree nodes, their title and	//		child nodes.	//		The root object for this class must be an array.	//		'node' Wires in 'nodes' property is used to identify an object	//		representing a node.	//		'title' Wires in 'nodes' property is used to get the title string	//		of a node.	//		'children' Wires in 'nodes' property is used to iterate over child	//		node objects.	//		The node values are returned in an array as follows:	//			[	//				{title: title1,	//		  	 	children: [	//					{title: title2,	//					 child: ...},	//					{title: title3,	//					 child: ...},	//					...	//				]},	//				...	//			]	//		This class only supports getValue(), but not setValue().		_wireClass: "dojox.wire.TreeAdapter",		constructor: function(/*Object*/args){		//	summary:		//		Initialize properties		//	description:		//		If object properties ('node', 'title' and 'children') of array		//		elements specified in 'nodes' property are not Wires, Wires are		//		created from them as arguments, with 'parent' property set to		//		this Wire instance.		//	args:		//		Arguments to initialize properties		//		nodes:		//			An array containing objects for child Wires for node values		this._initializeChildren(this.nodes);	},	_getValue: function(/*Array*/object){		//	summary:		//		Return an array of tree node values		//	description:		//		This method iterates over an array specified to 'object'		//		argument and calls getValue() method of 'node' Wires with each		//		element of the array to get object(s) that represetns nodes.		//		(If 'node' Wires are omitted, the array element is used for		//		further processing.)		//		Then, getValue() method of 'title' Wires are called to get		//		title strings for nodes.		//		(If 'title' Wires are omitted, the objects representing nodes		//		are used as title strings.)		//		And if an array of objects with 'node' and 'title' Wires is		//		specified to 'children', it is used to gather child nodes and		//		their title strings in the same way recursively.		//		Finally, an array of the top-level node objects are retuned.		//	object:		//		A root array		//	returns:		//		An array of tree node values		if(!object || !this.nodes){			return object; //Array		}		var array = object;		if(!dojo.isArray(array)){			array = [array];		}		var nodes = [];		for(var i in array){			for(var i2 in this.nodes){				nodes = nodes.concat(this._getNodes(array[i], this.nodes[i2]));			}		}		return nodes; //Array	},	_setValue: function(/*Array*/object, /*Array*/value){		//	summary:		//		Not supported		throw new Error("Unsupported API: " + this._wireClass + "._setValue");	},	_initializeChildren: function(/*Array*/children){		//	summary:		//		Initialize child Wires		//	description:		//		If 'node' or 'title' properties of array elements specified in		//		'children' argument are not Wires, Wires are created from them		//		as arguments, with 'parent' property set to this Wire instance.		//		If an array element has 'children' property, this method is		//		called recursively with it.		//	children:		//		An array of objects containing child Wires		if(!children){			return; //undefined		}		for(var i in children){			var child = children[i];			if(child.node){				child.node.parent = this;				if(!dojox.wire.isWire(child.node)){					child.node = dojox.wire.create(child.node);				}			}			if(child.title){				child.title.parent = this;				if(!dojox.wire.isWire(child.title)){					child.title = dojox.wire.create(child.title);				}			}			if(child.children){				this._initializeChildren(child.children);			}		}	},	_getNodes: function(/*Object*/object, /*Object*/child){		//	summary:		//		Return an array of tree node values		//	description:		//		This method calls getValue() method of 'node' Wires with		//		'object' argument to get object(s) that represents nodes.		//		(If 'node' Wires are omitted, 'object' is used for further		//		processing.)		//		Then, getValue() method of 'title' Wires are called to get		//		title strings for nodes.		//		(If 'title' Wires are omitted, the objects representing nodes		//		are used as title strings.)		//		And if an array of objects with 'node' and 'title' Wires is		//		specified to 'children', it is used to gather child nodes and		//		their title strings in the same way recursively.		//		Finally, an array of node objects are returned.		//	object:		//		An object		//	child:		//		An object with child Wires		//	returns:		var array = null;		if(child.node){			array = child.node.getValue(object);			if(!array){				return [];			}			if(!dojo.isArray(array)){				array = [array];			}		}else{			array = [object];		}		var nodes = [];		for(var i in array){			object = array[i];			var node = {};			if(child.title){				node.title = child.title.getValue(object);			}else{				node.title = object;			}			if(child.children){				var children = [];				for(var i2 in child.children){					children = children.concat(this._getNodes(object, child.children[i2]));				}				if(children.length > 0){					node.children = children;				}			}			nodes.push(node);		}		return nodes; //Array	}});}

⌨️ 快捷键说明

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