Ext.get()与Ext.fly()又什么不同
关键字: extjs
Ext.get()每次都会创建对象.而fly则会去缓存中查找,然后返回.你可以看下他们的源代码,如果有大量对象需要获得的话,最好使用Ext.fly()性能会好一些.
Ext.get和Ext.fly返回的都是一个Element对象,但是Ext.get返回的是一个独立的Element,拥有自己独立的操作接口 封装,可以将其返回值保存到变量中,以便以后调用操作等,这样为重用带来了方便。但是它的一个很大缺点就是内存消耗问题,假如调用 Ext.get(id)1000次,则会在内存中创建1000个独立Element,其内存占用可想而知。但是很多时候我们可能仅仅只是对该dom元素执行一次很简单的操作,如隐藏(hide),这样如果每次都创建一个独立Element放在内存中,实在是对内存的巨大浪费,因此当我们在只需要执行一次操作或者一个很简单的操作时,采用Ext.get就显得很不合理。Ext.fly正是为了解决这个问题而出现,它通过使每次创建的Element共享内存中的一套操作接口来达到节省内存的效果。
转载出处:http://seaskys.iteye.com/blog/479003
分享到:
相关推荐
### Ext.get与Ext.fly的区别 在Ext JS框架中,`Ext.get`和`Ext.fly`是两个非常重要的方法,它们主要用于操作DOM元素。理解这两个方法之间的区别以及如何使用它们对于开发高质量、高效率的应用程序至关重要。 #### ...
在阅读《Ext_Core手册.pdf》时,可以深入研究EXTJS的核心概念和API,了解更多关于`Ext.get`和`Ext.fly`的底层实现以及它们在不同场景下的应用策略。同时,理解EXTJS中的`Element`类和DOM操作对于提升EXTJS应用的性能...
`Ext.fly`是另一个与`Ext.get`相似但略有不同的方法,它主要用于一次性操作DOM元素,可以减少内存消耗,适用于只需要执行一次操作的情况。 学习Ext.js不仅是学习其API和组件,更重要的是理解其背后的MVC(Model-...
`Ext.fly`函数类似,但它的设计目的是快速执行一次性的DOM操作,而不需要保留对元素的引用,适合一次性操作的场景。 在Ext.js中,DOM操作是非常重要的部分。`Ext.get`和`Ext.getBody`是两个常用的DOM访问方法,前者...
6.2.3 使用ext.fly获取元素 / 256 6.2.4 使用ext.getdom获取元素 / 257 6.2.5 获取元素的总结 / 258 6.3 元素生成器:ext.dom.helper / 258 6.3.1 概述 / 258 6.3.2 使用createhtml或markup方法生成html代码 /...
1.Ext.get var el = Ext.get('myElementId');//获取元素,等同于document.getElementById('myElementId');//会缓存 2. Ext.fly var el = Ext.fly('myElementId')//不需要缓存。 注:享元模式(Flyweight Design ...
例如,`Ext.getDom('elId')`用于通过ID查找DOM节点,而`Ext.getDom(elDom)`则用于通过现有DOM节点查找DOM节点。 接下来,我们讨论EXT中的一些CSS元素操作: 4. **addClass**:使用`Ext.fly('elId').addClass('...
`Ext.get`和`Ext.fly`方法用于获取Element实例,`Ext.query`则类似于jQuery的`$`,用于选取DOM元素。Element对象还支持事件监听和动画效果。 3. **基本数据类型扩展**:EXT JS扩展了JavaScript的基本数据类型,如...
首先,`Ext.fly` 和 `Ext.get` 都是用来获取`Ext.Element`对象的方法,但它们之间存在一些关键的不同。`Ext.fly`,也称为`Ext.Element.fly`,是一个轻量级的快捷方式,它主要用于一次性操作DOM元素,不会保存对象...
**Ext.Ajax**是ExtJS框架中的一个核心组件,用于实现与服务器的异步通信,即Ajax请求。这一功能对于构建动态、响应式和交互式的Web应用至关重要。Ext.Ajax提供了一套封装良好的API,使得开发者能够更轻松地管理HTTP...
例如,`Ext.get()`方法用于获取DOM元素,`Ext.fly()`则允许快速访问并执行一次操作,而无需创建DOM选择器对象。此外,还有用于添加和删除类名、设置样式属性以及处理事件的方法。 **三、事件处理** Ext Core 提供了...
文章最后提到了Ext类的一些常用方法,如addBehaviors、apply、applyIf、decode、destroy、each、encode、escapeRe、extend、fly、get、getBody、getCmp等。这些方法提供了丰富的功能,如事件绑定、对象拷贝、JSON...
例如,`Ext.getBody()`可以获取当前文档的body对象,`Ext.getDom()`则可以由ID或DOM节点获取对应的DOM元素。 2. **addBehaviors**: 这个方法用于批量添加事件监听器。它允许你使用一种简洁的方式来为多个选择器绑定...
var el = Ext.fly('some-element', 'named'); // 获取带有ID "some-element" 的浮动元素 ``` ##### 11. `get(Mixed el):Element` - **功能**:获取一个Element对象。 - **参数**: - `el`:可以是ID、DOM节点或...
row = Ext.fly(rowNode, '_rowExpander'), nextBd = row.down(me.rowBodyTrSelector, true), isCollapsed = row.hasCls(me.rowCollapsedCls), addOrRemoveCls = isCollapsed ? 'removeCls' : 'addCls', ...