extjs 最好理解类和控件的监听触发和拦截,小实例一只
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(’Ziv’);
person.on(’walk’, function(){
Ext.Msg.alert(’event’, this.name + ‘在走啊走啊’);
});
person.on(’eat’, function(){
Ext.Msg.alert(’event’, this.name + ‘在吃东西呢’);
});
//————– 第二章 ——————————-
Ext.onReady(function(){
Ext.get(’test’).on({
’click’: {
fn: fn
},
’mouseover’:{
fn: fn,
delay: 100,
single: true
}
});
Ext.get(’link1′).on(’click’, function(){
Ext.util.Observable.capture(person, function(){
alert(’capture1′);
return false;
});
});
Ext.get(’link2′).on(’click’, function(){
Ext.util.Observable.releaseCapture(person);
});
});
var fn = function(e, el, args){
person.fireEvent(’walk’);
}
//继承Observable 目的, 在于实现一个支持事件的对象。Observable 位于Ext组件的最顶端,为组件的事件处理提供最基础功能
最近评论