Ext研究(1)——关于Function类的一些新方法的使用

Ext中Function类新增了一些比较实用的方法

createInterceptor( Function fcn, [Object scope] ) : Function
创建阻断方法,如果fcn返回false,原方法将不会被执行

createSequence( Function fcn, [Object scope] ) : Function
创建组合方法,执行原方法+fcn

defer( Number millis, [Object obj], [Array args], [Boolean/Number appendArgs] ):Number
定时执行,隔millis毫秒后执行原方法  

一下是写的一些一个例子页面

exttry.html

 

<! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd" >
< html >
    
< head >
        
< meta  http-equiv ="Content-Type"  content ="text/html; charset=utf-8" />
        
< link  rel ="stylesheet"  type ="text/css"  href ="../resources/css/ext-all.css" />
        
<!--  GC  --><!--  LIBS  -->
        
< script  type ="text/javascript"  src ="../adapter/ext/ext-base.js" >
        
</ script >
        
<!--  ENDLIBS  -->
        
< script  type ="text/javascript"  src ="../ext-all-debug.js" >
        
</ script >
        
< script  type ="text/javascript"  src ="exttry.js" ></ script >
        
< title > ext try </ title >
    
</ head >
    
< body >
           
< div  id ="logtxt" ></ div >
        
< div  id ="showdefer" ></ div >
    
</ body >
</ html >

exttry.js

 

/**
 * @author Administrator
 
*/

 
 
/**
  * msg
  
*/

function  log(msg) {
    
var logtxt = Ext.get("logtxt");
    logtxt.update(logtxt.dom.innerHTML
+'<br>'+msg);
}

function  clearlog() {
    
var logtxt = Ext.get("logtxt");
    logtxt.update(
'');
}

Ext.onReady(
function () {
        
var commonfunc = function(strfunc){
            log(
'此方法为示例通用方法'+strfunc);
        }

        
        
//测试创建createInterceptor阻断方法,阻断方法返回值为false
        var func1 = commonfunc.createInterceptor(function(){
            log(
'阻断方法,返回值为false');
            
return false;
        }
);
        func1(
'func1');
        
        
//测试创建createInterceptor阻断方法,阻断方法返回值为true
        var func2 = commonfunc.createInterceptor(function(){
            log(
'阻断方法,返回值为true');
            
return true;
        }
);
        func2(
'func2');
        
        
//测试createSequence顺序执行方法
        var func3 = commonfunc.createSequence(function(){
            log(
'顺序执行方法');
        }
);
        func3(
'func3');
        
        
        
//测试defer方法,推迟3秒执行
        var deferfunc = function(){
            
var showdefer = Ext.get('showdefer');
            showdefer.update(
'deferfunc方法执行');
        }

        deferfunc.defer(
3000);
        
    }

);

 

执行结果:


阻断方法,返回值为false
阻断方法,返回值为true
此方法为示例通用方法func2
此方法为示例通用方法func3
顺序执行方法
deferfunc方法执行
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值