近几天一直在想怎样把
树形菜单弄成可收放的侧边栏,搞了好几天都没有出来侧边的效果,今天终于出来了,原来是没有用Viewport显示
Ext API中对Viewport的描述如下
"A specialized container representing the viewable application area (the browser viewport).
The Viewport renders itself to the document body, and automatically sizes itself to the size of the browser viewport and manages window resizing. There may only be one Viewport created in a page. Inner layouts are available by virtue of the fact that all Panels added to the Viewport, either through its items, or through the items, or the add method of any of its child Panels may themselves have a layout.
The Viewport does not provide scrolling, so child Panels within the Viewport should provide for scrolling if needed using the autoScroll config."
treepanel.html文件内容
<!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">
<link rel="stylesheet" type="text/css" href="../extjs/resources/css/ext-all.css" />
<link rel="stylesheet" type="text/css" href="../css/menu.css" />
<!--<link rel="stylesheet" type="text/css" href="../extjs/docs/resources/docs.css" />-->
<script type="text/javascript" src="../extjs/adapter/ext/ext-base-debug.js"></script>
<script type="text/javascript" src="../extjs/ext-all-debug.js"></script>
<script type="text/javascript" src="../js/functreepanel.js"></script>
<title>Function TreePanel</title>
</head>
<body>
</body>
</html>
functreepanel.js文件内容
FuncPanel = function(){
FuncPanel.superclass.constructor.call(this,{
id: 'func-tree',
// renderTo: 'funcs',//此处不应有,否则会使设置的布局无效
region: 'west',//在整个布局中的位置
useArrows: true,
lines: false,
width: 200,
margins:'0 5 5 0',//top,right,bottom,left填充
autoScroll: true,
split: true,
collapseMode: 'mini',//收展按钮的样式
rootVisible: false,
root: {
text: 'ROOT',
nodeType: 'async'
},
dataUrl: '../js/nodes.json'//树节点的数据源
}/*param config*/);
};
Ext.extend(FuncPanel,Ext.tree.TreePanel,{
initComponent: function(){
Ext.apply(this, {
tbar: ['->',{
iconCls: 'icon-expand-all',//自定图标义样式
text: 'Expand',
handler: function(){ this.root.expand(true); },
scope: this
}, '-', {
iconCls: 'icon-collapse-all',//自定图标义样式
text: 'Collapse',
handler: function(){ this.root.collapse(true); },
scope: this
}]
});
FuncPanel.superclass.initComponent.call(this);
}
});
BodyPanel = function(){
BodyPanel.superclass.constructor.call(this,{
id: 'func-body',
region: 'center',
margins:'0 5 5 0',
// renderTo: 'func-body',
html: 'This is body area ... ...
',
autoScroll: true
}/*param config*/);
};
Ext.extend(BodyPanel,Ext.Panel,{
initComponent: function(){
Ext.apply(this,{
tbar: ['->',{
text: 'Refresh',
iconCls: 'icon-refresh'//自定图标义样式
}
]
})
BodyPanel.superclass.initComponent.call(this);
}
});
Ext.onReady(function(){
var fpl = new FuncPanel();//左侧panel
var mainPanel = new BodyPanel();//中间panel
var viewport = new Ext.Viewport({//用来展示页面的容器
layout:'border',
items:[fpl, mainPanel]//将FuncPanel和FuncBody放入其中显示
});
viewport.doLayout();
}
);
导航栏展开
菜单树全展开
导航栏收起
分享到:
相关推荐
一个extjs的OA项目 extjs-OA extjs-oaextjs-OA extjs-oa
extjs-620-docs官方文档extjs-620-docs官方文档extjs-620-docs官方文档
extjs-basex.js extjs-basex.js extjs-basex.js
在"extjs-4.1.1.zip"这个压缩包中,包含了ExtJS框架的4.1.1版本,这是一个成熟的版本,具有丰富的功能和优化的性能。 ExtJS的核心特性包括组件化设计、可定制的布局管理、强大的数据绑定机制以及一系列预设的UI组件...
总之,"extjs-theme-bootstrap" 是一个将 EXTJS4 的功能性和 Bootstrap 的美观设计结合的主题,为开发者提供了一种创建专业且用户友好的 Web 应用程序的途径。通过深入理解这个主题的结构和工作原理,你可以轻松地将...
extjs-cmd 脚手架安装包2 extjs-cmd 脚手架安装包3 extjs-cmd 脚手架安装包4
extjs-4.1.1 ExtJs所有文档及库文件,在官网下的,这个版本很好,放在这方便大家下载!
extJs-5.0.1-gpl附带sencha cmd安装程序、ruby编译包(分为32位和64位)和教程,一共四部分
extjs-6.5.3离线API文档,是学习和开发的必要工具。希望有所帮助!
extjs-core 3.0 beta版extjs-core 3.0 beta版SDK extjs-core 3.0 beta版extjs-core 3.0 beta版
ExtJS是一种主要用于创建前端用户界面,是一个基本与后台技术无关的前端ajax框架。功能丰富,无人能出其右。无论是界面之美,还是功能之强,ext的表格控件都高居榜首。单选行,多选行,高亮显示选中的行,推拽改变列...
Ext JS 4.2.6.1811 Release Date: October 5, 2016 Version Number: 4.2.6.1811 ext-src class 926
"extjs-theme-bootstrap-master.zip" 文件很可能是ExtJS的一个主题包,它集成了Bootstrap的样式,使得ExtJS组件能够呈现出Bootstrap的经典外观。 在深入讲解这个主题之前,让我们先了解一下基础概念: 1. **ExtJS*...
这个名为"ExtJS--Windows.rar"的压缩包显然是关于如何使用ExtJS来模仿Windows桌面应用的示例或教程。让我们深入探讨一下ExtJS以及如何利用它来实现这样的效果。 1. **ExtJS框架**:ExtJS是由Sencha公司开发的一个...
Ext JS 6最大的变化就是将Ext JS和Touch合并为一个单一的框架。之前的框架的核心(数据、控制器、模型等等)已被调和为一个单一的公共平台。这样,数据和逻辑就能共享,从而帮助开发人员进一步去优化他们的应用程序...
extjs-4.1.1为extjs官方免费版,解压之后引入对应的css和js即可使用
这篇博客文章"Extjs--DWR做的动态树"可能探讨了如何利用这两者结合来创建动态的树形数据结构,这种结构在很多Web应用中用于展示层次化的信息,比如文件系统、组织结构或导航菜单。 动态树在Web应用中是交互式的,...
这个"ExtJs-3.2.0.rar"压缩包包含了ExtJS 3.2.0版本的所有资源,允许开发者利用其强大的组件库和丰富的功能来创建交互式、数据驱动的网页应用。 1. **ExtJS框架介绍** ExtJS提供了一套完整的UI组件,包括表格、树...
ExtJS-6.2.0官方离线API文档