Extjs如何动态加载Extjs脚本

Extjs如何动态加载Extjs脚本,第1张

1、首先,需要先创建一个基本可用的 ExtJS 模板, 这个很简单, 如下所示:

<!DOCTYPE html>

<html>

<head>

<title></title>

<link rel="stylesheet" type="text/css" href="http://localhost/ext-4/resources/css/ext-all.css" />

<script type="text/javascript" src="http://localhost/ext-4/ext-debug.js"></script>

</head>

<body>

</body>

</html>

2、需要引用的脚本是 ExtJS 根目录下的 ext-debug.js , 不是 ext-all-debug.js, 这个文件非常小, 只有几百K , 当让这个只是最基本的 ExtJS 组件, 不包括任何的界面功能。

3、配置 Ext.Loader 启用动态加载

4、ExtJS 中的动态加载是由 Ext.Loader 来完成的, 默认不启用动态加载, 所以接下来需要做的事配置 Ext.Loader 启用动态加载, 在上面模板的 body 标签内添加如下代码:

<script type="text/javascript">

Ext.onReady(function() {

Ext.Loader.setConfig({

enabled: true,

disableCaching: false,

paths: {

Ext : '/ext-4/src'

}

})

})

</script>

注意:上面的代码启用了动态加载, 禁用了浏览器缓存, 以及指定了 ExtJS 的所部署的路径。

用html属性

{bodyStyle:'background:#069color:#FFFfont-size:12pxpadding-top:12px',html:'欢迎您!管理员'}

完整案例:

var hd={//这个就是上

region:'north',

height:40,

bodyStyle:'background:#069color:#FFFfont-size:12pxpadding-top:12px',

html:'欢迎您!管理员'

}

var mainMenu={

id:'menu_panel',

region:'west',

title:'功能菜单',

iconCls:'icon_menu',

split:true,

width:135,

minSize:100,

maxSize:250,

margins:'2 0 5 5',

cmargins:'2 5 5 5',

collapsible:true,

bodyBorder:false,

bodyStyle:'background-color:#DFE8F6',

layout:{type:'accordion',animate:false},

defaults:{border:false,bodyStyle:'padding:0px'},

items:[]

}

var modulePanel={

id:'module_panel',

region:'center',

border:false,

layout:'card',

margins:'2 5 5 0',

cmargins:'2 5 5 5',

activeItem:0,

items:[

{title:'欢迎进入管理系统 V1.0',id:'dashboard',

html:'内容区'

}]

}

var viewport=new Ext.Viewport({

layout:'border',

items:[hd,mainMenu,modulePanel]

})

viewport.doLayout()

首先要在treepanel中添加一个监听事件

listeners:{

click:function(n){

var url=n.attributes.url

var id=n.attributes.id

var p=center.getItem(id)

if(url){

if(p){

center.setActiveTab(p)

}else{

p=new Ext.Panel({

title:n.attributes.text,

renderTo:Ext.getBody(),

id:id,

html:'<iframe scrolling="auto" frameborder="0" width="100%" height="100%" src='+url+'></iframe>',

closable:true

})

center.add(p)

center.setActiveTab(p)

}

}

}

}

然后定义节点,在节点中写上url属性

var relationship=new Ext.tree.TreeNode({id:"relationship",text:"隶属关系",url:"relationship.html"})

url中你可以在引用js填充到panel中


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/bake/11504230.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存