`

Ext-API详解--core/Ext.js

    博客分类:
  • Ext
阅读更多

1、Ext.apply (Object obj, Object config, Object defaults ) : Object
将config中的所有属性复制到obj中,如果配置了defaults,则先将defaults中的属性传入obj,然后再将config中属性传入,一般defaults用于定义一些默认值。
注意:每个参数都必须是对象object,而不能是function或其他。
创建object可以通过new function(){}、new Object()、{}等方法创建。


2、Ext.emptyFn : Function
用于返回一个空函数,便于在程序中创建空函数。Ext.emptyFn返回function(){}

3、Ext.applyIf (Object obj, Object config) : Object
功能如同Ext.apply,但是只把config中存在而obj不存在的属性复制过去。

4、Ext.addBehaviors ( Object obj ) : void
为页面中一个或多个元素添加事件
元素使用css规则查找,其中元素与事件用@ 隔开

Ext.addBehaviors({
   //为id为foo的元素下的所有a元素添加click事件
   '#foo a@click' : function(e, t){
       // do something
   },
   // 为多个选择器添加相同的事件(mouseover)。在@之前使用逗号分开
   '#foo a, #bar span.some-class@mouseover' : function(){
       // do something
   }
});



5、Ext.id ( [Mixed el], [String prefix] ) : String  
返回一个唯一的id值。
如果只需要获取一个唯一的id值,则直接调用Ext.id();
如果需要为某个元素设定一个唯一的id值并返回id则调用Ext.id(el),el为元素Id、Dom对象或Ext的Element对象。
如果需要指定特定的前缀,则需要传入第二个参数,如Ext.id(el,”myPrix-”),默认前缀为ext-gen,如默认返回id可能为ext-gen4,指定了前缀后可能返回myPrix-4。

6、Ext.extend ( Object subclass, Object superclass, [Object overrides] ) : void
实现对象继承,目前还不太了解具体原理 ???

7、Ext.namespace ( String namespace1, String namespace2, String etc ) : void
创建命名空间:
如Ext.namespace("Company","MyNS.mydata","Data.format.string")
然后可以创建如MyNS.mydata.doit=function(){…}的接口
注:命名空间的简易调用:Ext.ns(),在Ext Api中未给出此用法。

8、Ext.urlEncode ( Object o ) : String
将一个json对象转换称url参数串,支持通过数组为一个参数设定多个值。
如将{a:1,b:2,c:[1,3,5,7]}转换为a=1&b=2&c=1&c=3&c=5&c=7

9、Ext.urlDecode ( String string, [Boolean overwrite] ) : Object
将url参数串转换为json对象,overwrite如果为true,则后面的同名参数值覆盖前面的同名参数值 (默认为false即不覆盖而以数组形式返回)。


Ext.urlDecode("a=1&b=2&c=1&c=3&c=5&c=7")
返回的对象内容为{a:1,b:2,c:[1,3,5,7]}
Ext.urlDecode("a=1&b=2&c=1&c=3&c=5&c=7",true)
返回{a:1,b:2,c:7}



10、Ext.each ( Array/NodeList/Mixed array, Function fn, Object scope ) : void
遍历array并对每项分别调用fn函数。如果array不是数组则只执行一次。
如果某项fn执行结果返回false(必须是false,undefined无效), 遍历退出,后面的array项将不被遍历。
遍历过程中每次为fn传入参数分别为[当前数组项],[当前索引]和[数组array] 三个参数。
Scope用于设定fn函数中的this指针。


Ext.each([1,3,5,7],function(v,i,a){
       alert("index: "+i+" value: "+v+" array.length:"+a.length)
});


将循环弹出:
index:0 value:1 array.length:4
index:1 value:3 array.length:4  
index:2 value:5 array.length:4  
index:3 value:7 array.length:4


Ext.each([1,3,5,7],function(v,i,a){
     alert("index: "+i+" value: "+v+" array.length:"+a.length);
     return v!=5;   //到第三项后遍历退出
});


将循环弹出:
index:0 value:1 array.length:4
index:1 value:3 array.length:4  
index:2 value:5 array.length:4  

11、Ext.combine (arg1,arg2..argn) : Array    //该方法在Ext2不推荐再使用
用于实现对数组的合并,如果是字符串则作为只有一项的数组合并。


var a1=[1,3,5],b1=["a","b","c"];var c1="xxyznbde";
Ext.combine(a1,b1,c1) 返回[1,3,5,a,b,c,xxyznbde]



12、Ext. escapeRe ( String str ) : String
将属于正则里的特殊字符进行转义。

Ext.escapeRe("(ab)$\sa342{}[dd]")将返回\(ab\)\$sa342\{\}\[dd\]。



13、Ext.callback (cb, scope, args, delay) :void  //该方法为Ext的内部方法
调用一个函数或延迟调用一个函数。
Cb:调用的函数。
scope:cb中this指针。
args:传如cb的参数,以数组形式表示。
delay:延迟多少毫秒执行cb。

Ext.callback(function(x,y){alert(x+y)},this,[3,5],1000);将于1秒钟后弹出8,即3+5的结果。



14、Ext.getDom ( Mixed el ) : HTMLElement
根据传入的id/dom节点/Ext的Elemenet对象,返回其dom对象。
如alert(Ext.getDom("a").innerHTML);或
alert(Ext.getDom(document.getElementById("a")).innerHTML);
将返回id为a的元素的innerHTML内容。

15、Ext.getDoc()/Ext.getBody() : Ext.Element
分别返回页面的document对象和body对象,返回值为Ext的Element对象,而非Dom对象。

16、Ext.getCmp ( String id ) : Ext.Component
根据传入的html元素id返回该元素的组件类型,返回值为Ext的Component对象。
必须保证该id对象的元素是Ext的一个内部组件(通过Ext创建的组件),否则什么都不返回。

17、Ext.num ( Mixed value, Number defaultValue ) : Number
验证value是否是一个数字,如果是则直接返回否则返回defaultValue。

alert(Ext.num(5,7))返回5,alert(Ext.num("5",7)) 返回7



18、Ext.destroy ( Mixed arg1, Mixed (optional), Mixed (optional) ) : void
销毁创建的Element或组件(Component),即销毁其所有的事件监听,dom节点,并调用对象本身的destory方法(如果存在的话),传入的参数类型为Ext.Element或Ext. Component,可以一次性传入多个对象进行销毁。

Ext.destory(menu,el,Button);会销毁menu,el,Button三个对象。



19、Ext.removeNode (htmlElement el): void  //Ext内部方法
删除指定的dom节点。传入参数为dom对象。

Ext.removeNode(document.getElementById("ab"));



20、Ext.type ( Mixed object ) : String
返回传入的对象的类型。
包括如下类型:
string,number,boolean,function,object,array,regexp,element,nodelist,textnode,whitespace


Ext.type("ab")返回string
Ext.type(20)返回number
Ext.type([3,5,6])返回array
Ext.type(/reg/)返回regexp
Ext.type(document.body)返回element。



21、Ext.isEmpty ( Mixed value, [Boolean allowBlank] ) : Boolean
检查一个值是否为null/undefined或是否是空,如果是则返回true。
如果传入allowBlank为true,则只检查是否为null或undefined。
如:


Ext.isEmpty("a")返回false,
Ext.isEmpty("")返回true,
Ext.isEmpty("",true)返回false,
Ext.isEmpty(null)返回true。



22、Ext.value (String v,String defaultValue[,[Boolean allowBlank]):String  //Ext内部方法
检查v是否是为null/undefined或空,如果是则返回defaultValue,否则返回v。如果allowBlank参数为true,则允许v为空(即当v为空时不返回defaultValue而返回空)。

分享到:
评论

相关推荐

    ext-2.3.0+CKEditor 3.0.1+ckfinder_asp_1.4配置详解及工程源码

    ext-2.3.0+CKEditor 3.0.1+ckfinder_asp_1.4配置详解 一、去http://cksource.com/下载这两个东西 二、去http://www.extjs.com/下载ext-2.3.0 三、将ext-2.3.0、CKEditor 3.0.1、ckfinder_asp_1.4,取出解压后的...

    ext核心api详解(3)

    EXT Core API 详解 EXTJS 是一款强大的前端开发框架,主要负责构建富互联网应用程序的用户界面,它与后端技术无关,专注于JavaScript实现。本文主要深入讲解EXTJS的核心API,特别是关于`Ext.data`的部分,包括`...

    (转载)GWT -EXT学习笔记-基础

    3. 在项目的`public`目录下新建`js`文件夹,并将`ext-2.1`目录下的`adapter`、`resources`以及`ext-all.js`、`ext-core.js`文件复制到`js`文件夹下。 **步骤二:修改HTML宿主页面和模块配置文件** 1. 修改`...

    基于ext-core的ajax自动保存功能

    ### 基于ext-core的ajax自动保存功能详解 在当今快速发展的互联网世界中,用户体验是产品设计的核心考量之一。特别是在长时间编辑文本的场景下,如撰写博客或邮件,自动保存功能成为提升用户体验的关键特性。本文将...

    Gwt-ext学习笔记

    2. 在项目的`public`目录下新建`js`文件夹,并将`ext-2.1`目录下的`adapter`、`resources`目录以及`ext-all.js`、`ext-core.js`等文件导入到`js`文件夹下,这是为了确保前端资源能够被正确引用。 **修改HTML宿主...

    ext_core_manual_zhcn.pdf

    ExtCore 是一个强大的 JavaScript 库,它不仅简化了 Web 开发过程中的常见任务,还提供了一套完整的 API 来支持高级应用开发。通过其丰富的文档和支持,即使是初学者也能快速上手并利用其强大的功能来构建复杂的应用...

    extjs的的初步开发步骤

    `ext-all.js`和`ext-all-debug.js`分别是压缩版和调试版的ExtJS库,`ext-core.js`是核心库,`ext-back-format.js`和`ext-core-debug.js`是其他支持文件。 2. **开发时需要的资源** - **ExtJS相关资源**:包括`...

    ext培训第一讲.doc 1/4

    ### EXT培训教程知识点详解 #### 一、EXT简介 **ExtJS** 是一款高级的Ajax框架,使用JavaScript编写而成,旨在构建丰富的Web应用程序界面。它不仅适用于开发RIA(Rich Internet Applications,即富互联网应用程序...

    Ext中文版手册最新版

    ### ExtCore中文版手册知识点详解 #### ExtCore概述与特性 **ExtCore**是一款轻量级的JavaScript库,设计初衷在于提供快速Web开发所需的多种功能,同时强调代码的高质量和可伸缩性。该库基于MIT许可证免费提供,...

    EXT_JS入门详解_x

    【EXT_JS入门详解_x】 EXT_JS是一个强大的JavaScript框架,专门用于构建富客户端的Ajax应用程序,提供了丰富的用户界面组件和交互性。它不依赖特定的后端技术,可以在.NET、Java、PHP等多种开发环境下无缝集成。EXT...

    ExtJs部署及使用方法

    - `ext-core.js`: ExtJs核心功能的脚本文件。 - `ext-back-format.js`: 用于后端数据格式化的脚本文件。 - `ext-core-debug.js`: 核心功能的调试版本脚本文件。 此外,还需要通过CVS或SVN等版本控制系统获取最新的...

    android ext4文件系统打包详解

    原因是make_ext4fs工具在制作ext4文件系统时会根据`system/core/private/android_filesystem_config.h`文件中预设的权限来重新设置。因此,如果需要修改文件权限,可以通过修改`android_filesystem_config.h`文件来...

    使用KGDB调试内核模块

    # patch -p1 < ../kgdb-patch/core-lite.patch # patch -p1 < ../kgdb-patch/i386-lite.patch # patch -p1 < ../kgdb-patch/8250.patch # patch -p1 < ../kgdb-patch/eth.patch # patch -p1 < ../kgdb-patch/i386....

    Ext+JS高级程序设计.rar

    第一部分 Ext Core 第1章 Ext Core重要概念 2 1.1 Ext.Element 2 1.1.1 获取HTMLElement节点的Ext.Element实例 2 1.1.2 CSS样式操作 3 1.1.3 DOM查询与遍历 4 1.1.4 DOM操作 6 1.1.5 事件处理 9 1.1.6 尺寸大小 13 ...

Global site tag (gtag.js) - Google Analytics