您的位置:首页 > Web前端 > JQuery

exitjs 结合 jquery 性能优化 之个人见解

2013-07-25 17:01 120 查看
首先 要优化 extjs 就必须了解 ,extjs 的机制,与 jquery 机制的不同。

有人说 extjs 比 jquery 垃圾,或者说慢。这他妈的乱放屁,要说。两个 工作机制都不一样。

jquery 是基于 dom 的,

你要是 用 jquery 编好了程序,然后换做 extjs 去操作 dom 其性能,谁好谁差,还很难说。

就说一点,jquery 能像 ,extjs 那样 渲染 前去操作 对象吗,

或者说, 图层 还没有 加到 dom 里,你 jquery 能操作吗。

两者 看你站在 什么角度去分析。谁差谁好,还不一定。

我这里要说优化 是 通过 jquery 来优化(前提是 extjs 渲染后才能 通过 jquery 优化--后面有解释)

当然也就提到了,extjs 的不足。比如:dom 的显示,

jquery 就是简单的 显示与隐藏,他肯定快,而且其中内置的事件,几乎没有执行。

而extjs 显示 隐藏,不仅是他,还有他下级的 控件,都 隐藏,和现实了,而且执行了很多 事件与方法,

还要修正,界面后的数据。

比如:from 标单里的 setValue() (我个人知道groupbox 除外)

都要执行。

还有,渲染的步骤。jqeury 不存在这个问题,他不存在渲染问题,因为他已经存在于dom,管你看不看的见,他真实的存在于 dom中

而extjs 有渲染和没渲染 一说。渲染后就不会再渲染了。他的机制 我个人的感觉 就是,你当前能看到的,或则以前看到的 都渲染了,而将要看到的,他没有渲染。

那他的 数据就存在 两部分,一是渲染后的 dom,和没有渲染的 部分,

而且 渲染后dom 还要作用到 ,他内部的数据。

1.通过 上面的叙述,异步渲染,确实,有一定的好出,对于本身,臃肿,而复杂的extjs 是可以加快。

这个看个人喜好,如果你觉得,用户能忍受,这个加载的 痛苦,就可以采用这种方式。

2.结合jquery 的dom 操作,阻断extjs 本身,拥有并复杂的 事件机制以及数据处理机制。

我是这样,完成加速的,先用extjs 整好页面,在了解生成的dom,通过 jquery 操作 dom(注意1:extjs 里任何东西,都可能不是你预期的 控件,如:text 或许在 dom 里

是由一组 复杂的 dom 构成,这个需要你自己分析,注意2 : 必须渲染后 jquery 才能操作)

通过 上面的 优化,基本能加快 复杂,绚丽的 控件 90% 的速度,特别设计元素较多,文本较多的 from 控件

而其他:非 from 的 控件,现在还很少发现,加载慢的。优化与否无关紧要。

(这里一起加载,比单个加载 ,花的总时间要少,但是究竟给用户的 感觉 个有个的感觉:不如:add(chaild1);add(child2)与add([child1,child2]));
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: