关于Ext.onReady的三种调用方

  • 方式一:

          <script>

           Ext.onReady(function(){

           alert('onready');

       });

 

 

    </script>      

 

              最简单了,最平常的调用,不用多说

 

  • 方式二:

    <script>

 

 

       Ext.color = function(){

 

           return {

              init:function(){

                  alert("init")

              }

           }

       }();

       Ext.onReady(Ext.color.init,Ext.color);

    </script>

 

 

                   通过onReady调用color函数,init为color中的内置,作用是初始化.这种写法比较实用

 

 

  • 方式三:

 

    <script>

       Ext.onReady(function(){

      

           alert('onready');

       });

       Ext.color = function(){

           return {

              init:function(){

                  alert("init")

              }

           }

       }();

       Ext.onReady(Ext.color.init,Ext.color);

    </script>+

我们知道,只有在Ext框架全部加载完后才能在客户端的代码中使用Ext,而Ext的onReady正是用来注册在Ext框架及页面的html代码加载完后,所要执行的函数。调用onReady方法时可以带三个参数,第一个参数是必须的,表示要执行的函数或匿名函数,第二参数表示函数的作用域,第三个参数表示函数执行的一些其它特性,比如延迟多少毫秒执行等,大多数情况下只需要第一个参数即可。
比如示例代码会在页面加载后执行函数a,弹出"Everything is ready."的提示信息。

 

 

  

Java代码
  1. function a(){   
  2. alert("Everything is ready.");   
  3. }   
  4. Ext.onReady(a);   //不能写成Ext.onReady(a());   因为参数是函数名!
function a(){ alert("Everything is ready."); } Ext.onReady(a);


    可以在一个页面中多次调用onReady方法,则将会把这些方法放到事件队列中,依次执行;onReady的第三个参数是事件执行的一些特殊属性描述,可以是简单的true或false,也可以是一个对象,对象中可以包含delay、single、buffer等属性,比如在上面的代码中添加下面的代码:

Java代码
  1. Ext.onReady(function(){alert("2")},this,{delay:5000});  
Ext.onReady(function(){alert("2")},this,{delay:5000});


    则在页面加载完成后,执行了a方法中的内容,5秒后会执行上面onReady方法中的匿名函数。
作用域是javascript中一个比较关键的特性,我们可以在事件中执行某一个函数的执行的作用域,下面的代码演示了在onReady方法中使用作用域。

Java代码
  1. var b1={v:"this is b1"};   
  2. var b2={v:"this is b2"};   
  3. function b()   
  4. {   
  5.      alert(this.v);   
  6. }   
  7. Ext.onReady(b,b1);   
  8. Ext.onReady(b,b2);  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值