<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <Meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title><%$sitename%></title> <%*加载的Extjs 资源文件 -- 开始*%> <link rel="stylesheet" type="text/css" href="<%$extjs_res%>" /> <script type="text/javascript" src="<%$extjs_adapter%>"></script> <script type="text/javascript" src="<%$extjs_laction%>"></script> <%*加载的Extjs 资源文件 -- 结束*%> <%*执行块的JS区域 -- 开始*%> <script type="text/javascript"> //具体开发 -- BJExtreme类 BJExtreme= function(){} ; BJExtreme.prototype.getAuthor = function(){ return '许消寒' ; } BJExtreme.prototype.getVersion = function(){ return '2008年08月13日 17:00' ; } BJExtreme.prototype.getController = function(){ return 'index.PHP' ; } BJExtreme.prototype.buildLinkStr = function(ctl,act){ if (ctl == undefined) return BJExtreme.prototype.getController() ; if (act == undefined) act = null ; return BJExtreme.prototype.getController() + '?ctl=' + ctl + '&act=' + act ; } BJExtreme.prototype.showWindow = function(title1,width1,height1,html1){ if (this.win == undefined){ this.win = new Ext.Window({ title: title1,width: width1,height: height1,html: html1 }); } else { this.win.close(); this.win = new Ext.Window({ title: title1,html: html1 }); } this.win.show(); } /*对出现的UI组件单独封装*/ BJExtreme.prototype.ui = function(){} ; BJExtreme.prototype.ui.mainTopic = { title: 'Beijing Extreme 后台管理',region: 'north',html: '<embed src="<%$prj_dir%>/swf/top_title.swf" quality="high" type="application/x-shockwave-flash" width="450" height="50"></embed>' }; /*左侧菜单项操作 -- 开始*/ //定义初始话状态时的菜单条对象 BJExtreme.prototype.ui.menuBar = { xtype: 'treepanel',title: '菜单',region: 'west',width: 200,collapsible: true,loader: null,root: null,rootVisible: true,listeners: null }; //旅游相关 BJExtreme.prototype.ui.menuBar.Traveling = { text: '旅游',leaf: false,// 这个设为false 则显示文件夹图标,true 则显示单项图标 children: null }; BJExtreme.prototype.ui.menuBar.Traveling.children = [ {text: '北京',leaf: true,ctl: 'Peking',act: ''},{text: '西藏',ctl: 'Tibet',{text: '泰国',leaf: true},{text: '香格里拉',ctl:'Shangrila',act: ''} ]; //藏医相关 BJExtreme.prototype.ui.menuBar.Mibetdoctor = { text: '藏医',children: null }; BJExtreme.prototype.ui.menuBar.Mibetdoctor.children = [ {text: '藏医历史',{text: '藏医理论',{text: '诊断',{text: '病症',{text: '治疗',leaf: true} ]; //潜水 BJExtreme.prototype.ui.menuBar.Diving = { text: '潜水',children: null }; //登山 BJExtreme.prototype.ui.menuBar.Mountain = { text: '登山',children: null }; //攀岩 BJExtreme.prototype.ui.menuBar.Rockclimbe = { text: '攀岩',children: null }; //徒步 BJExtreme.prototype.ui.menuBar.Onfoot = { text: '徒步',children: null }; //摩托车 BJExtreme.prototype.ui.menuBar.Motorcycle = { text: '摩托车',children: null }; //项目中集成的模块 BJExtreme.prototype.ui.menuBar.ModuleInProject = { text: '项目中集成的模块',children: null }; BJExtreme.prototype.ui.menuBar.ModuleInProject.children = [ { text: '互动提示条',ctl: 'ExtjsStudy',act: 'linkTips',//这个运行的优先级高于下面的那个通用的监听控制器 listeners:{click: function (n){window.open(BJExtreme.prototype.buildLinkStr(n.attributes.ctl,n.attributes.act));return false ;}} } ]; //初始化 菜单项元素 信息 -- 这个必须在 -- 当前菜单是使用异步树组件生成的,以后可以添加其他不同的实现 BJExtreme.prototype.ui.menuBar.loader = new Ext.tree.TreeLoader(); BJExtreme.prototype.ui.menuBar.root = new Ext.tree.AsyncTreeNode({ expanded: true,children: [ BJExtreme.prototype.ui.menuBar.Traveling,BJExtreme.prototype.ui.menuBar.Mibetdoctor,BJExtreme.prototype.ui.menuBar.Diving,BJExtreme.prototype.ui.menuBar.Mountain,BJExtreme.prototype.ui.menuBar.Rockclimbe,BJExtreme.prototype.ui.menuBar.Onfoot,BJExtreme.prototype.ui.menuBar.Motorcycle,BJExtreme.prototype.ui.menuBar.ModuleInProject ] }); //定义一个简单的响应事件 BJExtreme.prototype.ui.menuBar.listeners = { click: function (n) //n.attributes 可以获得AsyncTreeNode的children中的对象 { if (n.attributes.leaf == true) //叶选项 { //n.attributes.text n.attributes.leaf var ctlStr = BJExtreme.prototype.buildLinkStr(n.attributes.ctl,n.attributes.act); myextreme.showWindow('当前控制器',400,300,ctlStr) ; } else //包含子菜单 { //not to do } } }; //菜单选项结束 //主内容面板 BJExtreme.prototype.ui.contentPane = { id: "main_content",xtype: "tabpanel",region: 'center',items: [{title: '主内容面板'}] }; //状态条 BJExtreme.prototype.ui.statusBar = { xtype: "tabpanel",region: 'south',items: [{title: '状态条'}] }; BJExtreme.prototype.buildMainPane = function(BJExtremeObj){ //Ext.Viewport 用来将对象渲染到页面中的body块中,会自动改变,每个页面仅限一个 this.mainPane = new Ext.Viewport({ enableTabScroll: true,layout: 'border',//设为fit则不能显示复合面板 items: [ BJExtremeObj.ui.mainTopic,BJExtremeObj.ui.menuBar,BJExtremeObj.ui.contentPane,BJExtremeObj.ui.statusBar ] }) ; } var myextreme = new BJExtreme() ; Ext.onReady( function(){ //Ext.MessageBox.alert('BJExtreme Version',myextreme.getVersion()); //Ext.MessageBox.alert('BJExtreme Version',myextreme.buildLinkStr('t','b')); myextreme.buildMainPane(myextreme) ; } ); </script> <%*执行块的JS区域 -- 结束*%> </head> <body> <!-- //页面中子导航菜单 --> </body> </html>