动态载入js文件能够减轻浏览器的压力,本例使用了Ext.window.Window组件,该组件的学习地址:http://blog.csdn.net/z1137730824/article/details/38538277
详细实现步骤:
(1)建立dynamic.jsp文件
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html> <head> <base href="<%=basePath%>"> <title>My JSP '1HelloWorld.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"> <!-- <link rel="stylesheet" type="text/css" href="styles.css"> --> <link rel="stylesheet" type="text/css" href="js/extjs/resources/css/ext-all.css"> <script type="text/javascript" charset="utf-8" src="js/extjs/ext-all-debug.js"></script> <script type="text/javascript" charset="utf-8" src="js/extjs/ext-lang-zh_CN.js"></script> <script type="text/javascript" charset="utf-8" src="MyExt4Study/dynamic.js"></script> </head> <body> </body> </html>(2)建立dynamic.js和MyWindow.js文件,注意路径
文件详细内容:
dynamic.js
Ext.onReady(function(){ //动态载入js文件步骤: //1、在js/extjs/加入目录(ux),在ux目录中加入自己的文件 //2、在js/extjs/ux中编写扩展的组件 //3、启用Ext的动态载入机制,设置载入路径 //4、创建类的实例并使用 Ext.Loader.setConfig({ enabled:true, paths:{//能够载入多个js myux:'js/extjs/ux'//要载入的js所在的路径 } }); //创建实例 Ext.create('js.extjs.ux.MyWindow',{ title:'修修改态载入组件的标题' }).show(); });MyWindow.js
//define的类名,一点要严格依照包层次路径去编写 Ext.define('js.extjs.ux.MyWindow',{ extend:'Ext.window.Window' , //继承Ext的window类 title:'我是动态载入进来的组件', 300, //这是窗体的宽度 height:'50%', //高度和宽度值能够是数值型的,也能够是字符串型,用字符串型的比較好 layout: //布局 { type: 'fit'//Auto(默认),card,fit,hbox,vbox,anchor,table // align: 'left' }, plain:true,//设置窗体背景为透明 constrain:true,//设置窗体不超出浏览器边界 // constrainHeader:true,//设置窗体的标题不超出窗体的边界。标题之外能够超出 modal:true,//设置窗体时模态窗体 icon:'js/extjs/icons/icon.png',//设置图标。值为图标的路径 // iconCls:'',//CSS样式 x:50, //设置窗体在浏览器中显示的位置 y:50, autoScroll:true,//当窗体中的内容非常多的时候显示滚动栏 html:'这是窗体中显示的文字',//窗体中显示的文字。能够使Html文本 renderTo:Ext.getBody()//新创建的组件渲染到什么位置 });(3)启动server进行測试
结果:
打开FireFox控制台,选择网络,查看载入: