Person=function (name){
this.name=name;
this.addEvents("walk","eat","sleep");
}
Ext.extend(Person,Ext.util.Observable,{info:function(event){
return this.name+'is'+event+'ing.';
}
})var person=new Person('Lingo');
person.on('walk',function(){
Ext.Meg.alert('event',person.name+"在走啊走啊。");
});
person.on('eat',function(breakfast,lunch,supper){
Ext.Msb.alert('eat',person.name+"要吃"+breakfast,+"还要吃"+lunch+"和"+supper);
});
person.on('sleep',function(time){
Ext.Msg.alert('sleep',person.name+"从"+time+"开始睡觉啦");
});
Ext.get('walk').on('click',function(){
person.fireEvent('walk');
});
Ext.get('eat').on('click',function(){
person.fireEvent('eat','早餐','中餐','午餐');
});
Ext.get('sleep').on('click',function(){
person.fireEvent('sleep','25点61分');
});

解决方案 »

  1.   

      这是个自定义事件的例子,Person类,walk,eat,sleep是事件
       在html里面建walk,eat,sleep三个div,点击就可以运行了
        你Ext.msg.alert在walk和eat的监听中写错了
      

  2.   

    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <!-- 替换成你自己的Ext库路径 -->
    <link rel="stylesheet" type="text/css"
    href="ext-2.2/resources/css/ext-all.css"></link>
    <script type="text/javascript" src="ext-2.2/adapter/ext/ext-base.js"></script>
    <script type="text/javascript" src="ext-2.2/ext-all.js"></script>
    <script type="text/javascript">
               Ext.onReady(function(){
    Person = function(name)
    {
    this.name = name;
    this.addEvents("walk", "eat", "sleep");
    }
    Ext.extend(Person, Ext.util.Observable, {
    info : function(event)
    {
    return this.name + 'is' + event + 'ing.';
    }
    })

    var person = new Person('Lingo');
    person.on('walk', function()
    {
    Ext.Msg.alert('event', person.name + "在走啊走啊。");
    });
    person.on('eat', function(breakfast, lunch, supper)
    {
    Ext.Msg.alert('eat', person.name + "要吃" + breakfast, +"还要吃" + lunch
    + "和" + supper);
    });
    person.on('sleep', function(time)
    {
    Ext.Msg.alert('sleep', person.name + "从" + time + "开始睡觉啦");
    });

    Ext.get('walk').on('click', function()
    {
    person.fireEvent('walk');
    });
    Ext.get('eat').on('click', function()
    {
    person.fireEvent('eat', '早餐', '中餐', '午餐');
    });
    Ext.get('sleep').on('click', function()
    {
    person.fireEvent('sleep', '25点61分');
    });
    })
           </script>
    </head>
    <body>
    <input size="6" type="button" id="walk" value="点我就走">
    <input size="6" id="eat" type="button" value="点我就吃">
    <input size="6" id="sleep" type="button" value="点我就睡觉">
    </body></html>