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

📄 demonavigator.js

📁 dojo-0.4.0-ajax.zip ajax一个应用。在页面上可以直接用标签。此为ajax的框架
💻 JS
字号:
/*	Copyright (c) 2004-2006, The Dojo Foundation	All Rights Reserved.	Licensed under the Academic Free License version 2.1 or above OR the	modified BSD license. For more information on Dojo licensing, see:		http://dojotoolkit.org/community/licensing.shtml*/dojo.provide("dojo.widget.demoEngine.DemoNavigator");dojo.require("dojo.widget.*");dojo.require("dojo.widget.HtmlWidget");dojo.require("dojo.widget.Button");dojo.require("dojo.widget.demoEngine.DemoItem");dojo.require("dojo.io.*");dojo.require("dojo.lfx.*");dojo.require("dojo.lang.common");dojo.widget.defineWidget("my.widget.demoEngine.DemoNavigator", 	dojo.widget.HtmlWidget, 	{		templatePath: dojo.uri.dojoUri("src/widget/demoEngine/templates/DemoNavigator.html"),		templateCssPath: dojo.uri.dojoUri("src/widget/demoEngine/templates/DemoNavigator.css"),		postCreate: function() {			dojo.html.addClass(this.domNode,this.domNodeClass);			dojo.html.addClass(this.demoListWrapperNode,this.demoListWrapperClass);			dojo.html.addClass(this.demoListContainerNode,this.demoListContainerClass);			if (dojo.render.html.ie) {				dojo.debug("render ie");				dojo.html.hide(this.demoListWrapperNode); 			} else {				dojo.debug("render non-ie");				dojo.lfx.html.fadeHide(this.demoListWrapperNode, 0).play();				}			this.getRegistry(this.demoRegistryUrl);			this.demoContainer = dojo.widget.createWidget("DemoContainer",{returnImage: this.returnImage},this.demoNode);			dojo.event.connect(this.demoContainer,"returnToDemos", this, "returnToDemos");			this.demoContainer.hide();		},		returnToDemos: function() {			this.demoContainer.hide();			if (dojo.render.html.ie) {				dojo.debug("render ie");				dojo.html.show(this.navigationContainer) ;			} else {					dojo.debug("render non-ie");				dojo.lfx.html.fadeShow(this.navigationContainer,250).play();			}			//if (dojo.render.html.ie) {			//	dojo.html.setOpacity(this.navigationContainer);			//}			dojo.lang.forEach(this.categoriesChildren, dojo.lang.hitch(this, function(child){				child.checkSize();			}));			dojo.lang.forEach(this.demoListChildren, dojo.lang.hitch(this, function(child){				child.checkSize();			}));		},		show: function() {			//dojo.widget.demoEngine.DemoNavigator.superclass.show.call(this);			dojo.html.show(this.domNode);			dojo.html.setOpacity(this.domNode,1);			//dojo.html.setOpacity(this.navigationContainer);				//dojo.html.show(this.navigationContainer);			dojo.html.setOpacity(this.navigationContainer,1);			dojo.lang.forEach(this.categoriesChildren, dojo.lang.hitch(this, function(child){				child.checkSize();			}));			dojo.lang.forEach(this.demoListChildren, dojo.lang.hitch(this, function(child){				child.checkSize();			}));		},		getRegistry: function(url) {			dojo.io.bind({				url: url,				load: dojo.lang.hitch(this,this.processRegistry),				mimetype: "text/json"			});		},		processRegistry: function(type,registry,e) {			dojo.debug("Processing Registry");			this.registry = registry;			dojo.lang.forEach(this.registry.navigation, dojo.lang.hitch(this,this.addCategory)); 		},		addCategory: function(category) {				var newCat = dojo.widget.createWidget("Button",{caption: category.name});				if(!dojo.lang.isObject(this.registry.categories)) {					this.registry.categories=function(){};				}				this.registry.categories[category.name] = category;				this.categoriesChildren.push(newCat);				this.categoriesButtonsNode.appendChild(newCat.domNode);					newCat.domNode.categoryName = category.name;				dojo.event.connect(newCat,"onClick", this, "onSelectCategory");		},		addDemo: function(demoName) {			var demo = this.registry.definitions[demoName];			if (dojo.render.html.ie) {				dojo.html.show(this.demoListWrapperNode) 			} else {				dojo.lfx.html.fadeShow(this.demoListWrapperNode, 250).play();			}			var newDemo = dojo.widget.createWidget("DemoItem",{viewDemoImage: this.viewDemoImage, name: demoName, description: demo.description, thumbnail: demo.thumbnail});			this.demoListChildren.push(newDemo);			this.demoListContainerNode.appendChild(newDemo.domNode);				dojo.event.connect(newDemo,"onSelectDemo",this,"onSelectDemo");		},		onSelectCategory: function(e) {			catName = e.currentTarget.categoryName;				dojo.debug("Selected Category: " + catName);			//Remove current list of demos			dojo.lang.forEach(this.demoListChildren, function(child) {					child.destroy();			});			this.demoListChildren=[];			//add demos from this cat			dojo.lang.forEach(this.registry.categories[catName].demos, dojo.lang.hitch(this,function(demoName){				this.addDemo(demoName);			}));		},		onSelectDemo: function(e) {			//Attach to this to do something when a demo is selected			dojo.debug("Demo Selected: " + e.target.name);			if (dojo.render.html.ie) {				dojo.debug("render ie");				dojo.html.hide(this.navigationContainer) ;				this.demoContainer.show();				this.demoContainer.showDemo();			} else {				dojo.debug("render non-ie");				dojo.lfx.html.fadeHide(this.navigationContainer,250,null,dojo.lang.hitch(this, function() {					this.demoContainer.show();						this.demoContainer.showDemo();				})).play();			}			this.demoContainer.loadDemo(this.registry.definitions[e.target.name].url);			this.demoContainer.setName(e.target.name);			this.demoContainer.setSummary(this.registry.definitions[e.target.name].description);		}			},	"",	function() {		this.demoRegistryUrl="demoRegistry.json";		this.registry=function(){};		this.categoriesNode="";		this.categoriesButtonsNode="";		this.navigationContainer="";		this.domNodeClass="demoNavigator";		this.demoNode="";		this.demoContainer="";		this.demoListWrapperNode="";		this.demoListWrapperClass="demoNavigatorListWrapper";		this.demoListContainerClass="demoNavigatorListContainer";		this.returnImage="images/dojoDemos.gif";		this.viewDemoImage="images/viewDemo.png";		this.demoListChildren = [];		this.categoriesChildren = [];	});

⌨️ 快捷键说明

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