在使用ExtJs过程中,性能一直是一个比较头疼的问题,从用户的角度来看,就一个字:慢。从技术的角度来说,这个“慢”字可以分为两种,加载“慢”和渲染“慢”。想分辨这两种情况很容易:如果居于网不慢而互联网上慢,说明是加载慢;如果Chrome不慢而IE慢,就是渲染慢。还有另一种情况:越用越慢,这个“慢”通常是内存泄露造成的。
针对以下这三种情况讨论一下解决方案:
1,加载慢
1.1 减少要加载的东西
不要动不动就ext-all.js,extjs是可以定制的,如果你用不到tree,就不要包含这个组件了。ExtJs的官网上有详细的定制方法和工具。
1.2 给出合适的用户提示
把Js后置,然后前面做一个加载的提示。如果像Gmail那样给出进度条,或者像很多网游那样来点图片或者Tips啥的就更好了,说不定用户还会觉得怎么加载这么快,我还没看清楚呢。
1.3 用的时候再加载
动态加载,参考使用ExtJs开发MIS系统(2):Js的动态加载。
1.4 只加载一次
别用iframe了,如果你的静态内容过期做的不好,浏览器会经常再不厌其烦的从服务器下载同样的东西。
1.5 对你的Js添加过期标记
ext-base.js、ext-all.js都可以设置很长的过期时间,甚至永不过期(如果你不换extjs的版本)。这点对所有静态内容都很有用,如何设置过期标记请垂询Google。
2,渲染慢
2.1 少加载少解析、晚加载晚解析
1.1,1.3,1.4都对改善渲染慢的情况有效——加载的少了自然渲染的快了。
2.2 别用iframe
iframe不仅仅可能会使浏览器加载两遍,还一定会使浏览器解析两遍,放弃它吧,真的。
2.3 精心设计你的Js代码
例如缓存getElementByID()的结果、编译查询表达式之类的东西,这个纯看Js功力。
2.4 可能的话,让用户换个浏览器吧
Chrome比IE的Js渲染快是数量级上的差异!构造一个40列,50行的复杂GridPanel试试,你就会深有体会了……对于企业内部的MIS系统,换浏览器还是具有可能性的。
3,内存泄露
对于Js这样具有垃圾回收特性的语言来说,如果出现了内存泄露,那么就只有一种可能:引擎有问题!不幸的是,这个问题我们没有办法,但是有很多技巧可以避开……还是问Google吧:“JavaScript 内存泄露”,这个问题够再写一个系列的了。
分享到:
相关推荐
总的来说,"jsp extjs Efs管理系统"项目提供了一个集成了JSP、EXTJS和多种数据库的实例,对于学习Web开发、特别是Java Web和前端框架的融合应用,具有很高的参考价值。无论是初学者还是经验丰富的开发者,都能从中...
【标题】:使用Extjs构建的简易酒店管理系统 在IT行业中,开发用户界面时经常会用到JavaScript库,其中ExtJS是一个强大的前端框架,用于构建功能丰富的、交互式的Web应用程序。本项目“使用Extjs写的简单酒店管理...
本文将详细介绍一个使用ExtJS开发的图书管理系统,该系统同时结合了Spring和iBATIS作为其核心架构组件。 首先,ExtJS是一个流行的JavaScript库,用于构建桌面级的Web应用程序。它提供了丰富的UI组件,如表格、窗口...
《基于Extjs的酒店管理系统详解》 在信息技术日益发展的今天,高效的管理软件成为了各行各业提升工作效率的重要工具。本文将深入探讨一款名为"Extjs版酒店管理系统"的软件,它利用Visual Studio 2005(VS2005)、...
【标题】:“asp.net与extjs开发点卡在线销售...总结来说,"asp.net与extjs开发点卡在线销售系统"项目涵盖了Web开发的多个关键环节,从后端逻辑处理到前端用户体验,再到系统安全和性能优化,体现了全面的IT知识体系。
SSH+Extjs Oa管理系统整合是一项复杂而关键的IT任务,涉及到多个技术栈的集成,主要包括Struts、Spring和Hibernate这三个Java EE框架,以及Extjs前端框架。在这样的系统中,SSH负责后端业务逻辑处理和数据管理,而...
在IT行业中,开发高效、用户友好的客户关系管理系统(CRM)是至关重要的,尤其是在商业环境中。本项目基于ExtJS和SSH框架,展示了如何利用这些技术构建一个完整的CRM系统。下面将详细阐述这些技术及其在CRM开发中的...
SSH Maven Extjs开发实例教程分营销管理、客户管理、服务管理、统计报表、基础...SSH Maven Extjs开发实例教程由北风网提供,用到技术:Hibernate、Struts、Spring、Maven、Extjs、MySQL涉及项目:CRM客户关系管理系统.
【标题】"上传下载ExtJS 2.2 开源网络硬盘系统-dogdisk" 提供了一个关于使用ExtJS 2.2开发的开源网络硬盘系统的介绍。ExtJS是一个流行的JavaScript库,它允许开发者构建功能丰富的、用户友好的Web应用程序。在本项目...
在IT行业中,尤其是在开发Web应用时,安全性是一个至关重要的议题。"extjs加水印"这一主题涉及到如何在EXTJS框架构建的系统中添加水印功能,以增强数据的安全性,防止敏感信息非法传播。EXTJS是一个强大的JavaScript...
在IT行业中,SSH+EXTJS4的整合开发是一种常见的前端与后端技术栈结合,用于构建功能丰富的Web应用程序。SSH代表Spring、Struts和Hibernate,它们分别是Java领域中用于处理不同层面的三个核心框架:Spring提供了依赖...
Struts2、Hibernate、Spring 和 ExtJS 是四个在IT领域,特别是Java企业级开发中非常重要的框架和技术。这个完整的包提供了构建OA(Office Automation)办公系统的解决方案,让我们逐一解析这些技术及其在OA系统中的...
ExtJS4.2简单布局+权限管理+SqlServer2008(绑定数据、添加、修改、删除、查询、导入和导出、Ztree等)
本文将深入探讨一款名为"MIS"的信息管理系统,它采用JSP(JavaServer Pages)作为后端开发语言,并结合EXTJS框架进行前端展示,为公司内部提供了一个高效、便捷的信息管理平台。 首先,JSP是Java的一种动态网页技术...
在IT领域,ExtJS是一个强大的JavaScript框架,用于构建富客户端应用程序。它提供了丰富的组件库,使得开发者能够创建功能丰富的Web应用界面。而CKEditor则是一款知名的富文本编辑器,广泛用于网页内容的编辑和格式化...
在线检测系统框架基于ExtJS是一种高效且用户友好的前端开发框架,它专为构建复杂的Web应用程序而设计。ExtJS提供了一套完整的组件库,包括表格、表单、面板、图表等,使得开发者能够轻松地创建出功能丰富的界面,...
在IT行业中,构建Web应用程序是常见的任务,而“Hibernate+Spring+Struts2+ExtJS开发CRUD功能”是一个经典的Java Web开发框架组合,用于高效地实现数据的创建(Create)、读取(Read)、更新(Update)和删除...
本项目是一个使用EXTJS、Hibernate、Spring和Java Direct技术栈开发的单页面应用程序(SPA),它提供了全面的企业级功能,如产品管理、库存控制以及用户和角色管理。下面将详细解析这些技术及其在该项目中的应用。 ...
ExtJS和Oozie是两个在IT行业中广泛使用的开源工具,它们在大数据处理和Web应用程序开发方面发挥着重要作用。在本篇文章中,我们将深入探讨这两个技术以及它们之间的结合。 **ExtJS 2.2** ExtJS是一个基于JavaScript...