- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一步一步学习ExtJS4——页面布局(图文实例)主讲:许家志
一步一步学习ExtJS4.0——页面布局
——许家志
目标效果:
这种布局方式,经常在一些大型的B/S后台系统中可以看得到,应用的主要是Accordion布局还有Border布局,具有广泛的应用价值,这节我们主要讲简单的布局实现,美工以及事件响应将在下一节讲
先决条件:
从ExtJS4.0的官方网站上面下载了Ext的开发包,然后引用到你的案例中,这里我们的引用顺序是固定的, 先引用外观(CSS),在引用行为(JS)
在这个例子中,加上自己的脚本文件,我是这样引用的:
ExtJS为我们提供了丰富的组件,我们为我们用到的进行讲解,首先是Panel,下图为Ext4.0帮助文档中的截图,主要介绍了Ext.Panel的各种配置属性(config)
下面我们用里面的简单几个属性,来构造一个最简单的面板,代码如下:
效果图如下:
小例子中定义了一个新的Panel ,通过new Ext.Panel()方法来实现,其中方法参数为一个包含了各种参数配置的的Jason格式对象{key:value,……},这里我们用的只有几个而已,截图中已经做出了注释,不难看出,所有的配置属性,都是我们熟知的英文单词,这为我们同时学习专业英语也提供了一个难能可贵的契机。
第一部分 Border布局
在本实例中呢,我们需要特地试用几个比较特别配置属性,他们分别是layout,border,和region,layout指定了在该面板中,试用的布局方式,而border则配置面板是否含有边框(1个像素),最后region则是在viewport中用来实现指定方位的
实例中不难看出,我们的页面中包含了3个面板,分别占据了上,左和右,其实,在ExtJS中,他的region为我们提供了4个方位为我们布局,分别为东南西北中,对应的属性值也是对应的英文,分别为east,south,west,north,center.记忆方位也很简单,我们看地图的“上北下南左西右东”标准,为了实现本例中的效果,我们这里先构建虽简单的三个面板,为了确定其方位,必须指定其方位,代码如下:
var panelNorth=new Ext.Panel({region:north})///上
ar panelWest=new Ext.Panel({region:west})///左
var panelCenter=new Ext.Panel({region:center})///中buildAViewport=function(){
var v=new Ext.Viewport({
layout:border,
items:[panelNorth,panelWest,panelCenter]
})
这样我们只需要在Ext.onReady事件中把这一个函数运行起来,就可以在页面中看到我们构建的三个区域,只是在此时,三个panel的样式都是很低级的,什么也没有,我们这时通过其他选项来丰富他一下,这里我们一个一个来,首先是上面,我们将构建参数修改如下
上:
左:
此时,我们得到的页面也算是差不多整体布局出来了
在此之前呢,我们所讲的完全围绕着的是Border布局,下面呢为了完善整个页面,中间呢,我们可能会遇到一些小小的问题,这里我们可以通过实验来解决。
为什么在Viewport的设置参数里面,非要用border?
原因很简单,相信做过web设计的人都曾遇到过这样一个问题“为什么要在具体实现左右布局的时候要用到float属性”,这样对比理解就可以了,border布局,实现了部分面板的float属性,使我们的页面显得更为灵活,不至于一片上下,而无左右。朋友们可以使用注释 layout属性的方法来试验一下。
为什么我在使用了Border布局之后,出现了”SCRIPT5007: 无法获取属性“flex”的值: 对象为 null 或未定义”的错误?
细心的朋友可能会发现了,在使用了border布局之后,必须拥有的一个region为center面板,否则就会出现上述错误,哪怕在在viewport的所有属性中最后只有一个center面板,也不会有错误,但若是没有,则肯定会错。这就好像国不可一日无君一样。这里朋友们可以单独对items进行部分注释来进行试验
为什么我的文字显示不完整?
这不是你的错,只是因为现在的4版本对 IE9的支持上,文字显示就是不全,解决起来也只能是,按F12,打开开发人员工具条,在里面设置 浏览器模式 为 IE8
第二部分 Accordion布局
通过前面的布局我们把整个页面布局给搭建好了,现在我们需要做的是将 左边的面板填充上一个可折叠的菜单条,在之前,我们先建立一个menu的对象,代码如下:
var txtMenu=ul class=menuliEx
您可能关注的文档
最近下载
- 电力调度数据网络接入技术规范及网络拓扑图.doc VIP
- ZZGA高频开关整流器使用说明书.doc
- 危重患者院内转运PPT.pptx VIP
- 匀变速直线运动的速度与时间的关系课件 2024-2025学年高一上学期物理人教版(2019)必修第一册.pptx VIP
- 《科学发展观》课件.ppt VIP
- 匀变速直线运动的位移与时间的关系 课件 -2024-2025学年高一上学期物理人教版(2019)必修第一册.pptx VIP
- 2022年西安市灞桥区事业单位考试真题.docx VIP
- 【课件】匀变速直线运动的位移与时间的关系+课件高一上学期物理人教版(2019)必修第一册.pptx VIP
- 2024西安市灞桥区事业单位考试笔试题库及答案.docx VIP
- 福建专升本 “三个代表” 重要思想(思维导图).pdf VIP
文档评论(0)