锁定老帖子 主题:讨论Ext项目的性能优化
精华帖 (0) :: 良好帖 (2) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-11-11
最后修改:2008-11-21
现在开发的项目用了Ext+Dwr,页面初始化的时间比较长(我的项目左边是树,右边使用tabPanel引入iframe),有什么优化方法呢?
整理各位大侠的意见如下: 方法一: 压缩传输,比如tomcat6下面启用gzip,修改server.xml的配置:
一篇介绍Gzip的文章:http://betterexplained.com/articles/how-to-optimize-your-site-with-gzip-compression/ 不错!
一篇介绍iframe直接使用父页面的js和css技术的文章:http://matthew.delmarters.com/weblog/injecting-javascript-and-css-into-iframes/#comment-64462 不是很明白!
当然还有其他的一些压缩工具:比如E3压缩。
方法二: 项目中Ext代码优化。 1. 不推荐使用iframe加载的方式,使用autoload。 2. 在完成了组件对象的使用以后必须回收,可以使用对应对象的destroy,beforeDestroy,removeAll等方法销毁对象以及一些孤立节点。 3. 不要把继承层次弄的太深。 。。。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-11-11
最后修改:2008-11-11
把你的firebug的控制台发上来看看
|
|
返回顶楼 | |
发表时间:2008-11-12
看到很多人都说用gzip压缩,这个怎么搞?
|
|
返回顶楼 | |
发表时间:2008-11-12
google了一下关于tomcat6下面的启用gzip的配置:
<Connector port="8081" protocol="HTTP/1.1" maxThreads="150" compression="on" noCompressionUserAgents="gozilla, traviata" compressableMimeType="text/html,text/xml,text/javascript,text/css" connectionTimeout="20000" redirectPort="8443" URIEncoding="GBK"/> |
|
返回顶楼 | |
发表时间:2008-11-12
我配置了tomcat6的gzip,但是效果不明显啊
|
|
返回顶楼 | |
发表时间:2008-11-12
为什么我用firebug查看会有重复请求?
我的操作是点击树,刷新右边的iframe |
|
返回顶楼 | |
发表时间:2008-11-12
代码 哩?
|
|
返回顶楼 | |
发表时间:2008-11-12
ctree.on('click', function(node) { if (node.leaf) { var nodeid = "treenode" + node.attributes.id; var tab = mainPanel.getItem(nodeid); if (tab) { var obj = document.getElementById("f_" + nodeid); obj.src = node.attributes.url; // tab.setTitle(node.attributes.text); mainPanel.setActiveTab(tab); } else { var iFrame1 = '<iframe id="f_' + nodeid + '" frameborder="0" width="100%" height="100%" scrolling="auto" src="' + node.attributes.url + '"></iframe>'; var t = mainPanel.add(new Ext.Panel( { id :nodeid, title :node.attributes.text, autoScroll :true, closable :true, html :iFrame1 })).show(); mainPanel.setActiveTab(t); } var msg = " 正在加载页面... "; var body = Ext.get("tabs"); body.mask(msg,'page-loading'); Ext.fly(Ext.query('div[class^=ext-el-mask-msg]')[0]).center(); } else { node.toggle(); } }, this, { stopEvent :true }); 主要是这一块,树点击刷新右边iframe |
|
返回顶楼 | |
发表时间:2008-11-13
最后修改:2008-11-13
我也是刚刚在用ext
你是否在写页面时就已经把<ifram>写了一次呢? 加载完又用Ext重新绚染一次呢? 你的页面上的ifram的src=是空的么? |
|
返回顶楼 | |
发表时间:2008-11-14
阳光晒晒 写道 我也是刚刚在用ext 你是否在写页面时就已经把<ifram>写了一次呢? 加载完又用Ext重新绚染一次呢? 你的页面上的ifram的src=是空的么? 页面上是没有iframe的 |
|
返回顶楼 | |