Ext.EventObject

Hierarchy

Ext.Base
Ext.EventObject

Uses

Files

正如Ext.Element包装一个原生的DOM节点, Ext.EventObject包装浏览器的原生事件对象,常规化跨浏览器之间的差异, 比如哪个鼠标按钮被单击,按键按下, 停止事件传播方法以防止默认操作发生的机制。

示例:

function handleClick(e, t){ // e它不是一个标准的事件对象,而是Ext.EventObject
    e.preventDefault();
    var target = e.getTarget(); // 与 t (目标HTMLElement)相同
    ...
}

var myDiv = Ext.get("myDiv");  // 获取对一个 Ext.Element 的引用
myDiv.on(         // 'on' 是 addListener 的简写
    "click",      // 单击 myDiv 上执行的操作
    handleClick   // 动作处理的引用
);

// 其他的方法做同样的:
Ext.EventManager.on("myDiv", 'click', handleClick);
Ext.EventManager.addListener("myDiv", 'click', handleClick);
Defined By

Properties

扩展事件

Defaults to: []

Ext.EventObject
: Number

按键常量

Defaults to: 65

Ext.EventObject
: Number

按键常量

Defaults to: 18

Ext.EventObject
: Number

按键常量

Defaults to: 66

Ext.EventObject
: Number

按键常量

Defaults to: 8

Ext.EventObject
: Number

按键常量

Defaults to: 67

Ext.EventObject
: Number

按键常量

Defaults to: 20

Ext.EventObject
: Number

按键常量

Defaults to: 93

Ext.EventObject
: Number

按键常量

Defaults to: 17

Ext.EventObject
: Number

按键常量

Defaults to: 68

Ext.EventObject
: Number

按键常量

Defaults to: 46

Ext.EventObject
: Number

按键常量

Defaults to: 40

Ext.EventObject
: Number

按键常量

Defaults to: 69

Ext.EventObject
: Number

按键常量

Defaults to: 56

Ext.EventObject
: Number

按键常量

Defaults to: 35

Ext.EventObject
: Number

按键常量

Defaults to: 13

Ext.EventObject
: Number

按键常量

Defaults to: 27

Ext.EventObject
: Number

按键常量

Defaults to: 70

Ext.EventObject
: Number

按键常量

Defaults to: 112

Ext.EventObject
: Number

按键常量

Defaults to: 121

Ext.EventObject
: Number

按键常量

Defaults to: 122

Ext.EventObject
: Number

按键常量

Defaults to: 123

Ext.EventObject
: Number

按键常量

Defaults to: 113

Ext.EventObject
: Number

按键常量

Defaults to: 114

Ext.EventObject
: Number

按键常量

Defaults to: 115

Ext.EventObject
: Number

按键常量

Defaults to: 116

Ext.EventObject
: Number

按键常量

Defaults to: 117

Ext.EventObject
: Number

按键常量

Defaults to: 118

Ext.EventObject
: Number

按键常量

Defaults to: 119

Ext.EventObject
: Number

按键常量

Defaults to: 120

Ext.EventObject
: Number

按键常量

Defaults to: 53

Ext.EventObject
: Number

按键常量

Defaults to: 52

Ext.EventObject
: Number

按键常量

Defaults to: 71

Ext.EventObject
: Number

按键常量

Defaults to: 72

Ext.EventObject
: Number

按键常量

Defaults to: 36

Ext.EventObject
: Number

按键常量

Defaults to: 73

Ext.EventObject
: Number

按键常量

Defaults to: 45

Ext.EventObject
: Number

按键常量

Defaults to: 74

Ext.EventObject
: Number

按键常量

Defaults to: 75

Ext.EventObject
: Number

按键常量

Defaults to: 76

Ext.EventObject
: Number

按键常量

Defaults to: 37

Ext.EventObject
: Number

按键常量

Defaults to: 77

Ext.EventObject
: Number

按键常量

Defaults to: 78

Ext.EventObject
: Number

按键常量

Defaults to: 57

Ext.EventObject
: Number

按键常量

Defaults to: 12

Ext.EventObject
: Number

按键常量

Defaults to: 111

Ext.EventObject
: Number

按键常量

Defaults to: 104

Ext.EventObject
: Number

按键常量

Defaults to: 101

Ext.EventObject
: Number

按键常量

Defaults to: 100

Ext.EventObject
: Number

按键常量

Defaults to: 109

Ext.EventObject
: Number

按键常量

Defaults to: 106

Ext.EventObject
: Number

按键常量

Defaults to: 105

Ext.EventObject
: Number

按键常量

Defaults to: 97

Ext.EventObject
: Number

按键常量

Defaults to: 110

Ext.EventObject
: Number

按键常量

Defaults to: 107

Ext.EventObject
: Number

按键常量

Defaults to: 103

Ext.EventObject
: Number

按键常量

Defaults to: 102

Ext.EventObject
: Number

按键常量

Defaults to: 99

Ext.EventObject
: Number

按键常量

Defaults to: 98

Ext.EventObject
: Number

按键常量

Defaults to: 96

Ext.EventObject
: Number

按键常量

Defaults to: 79

Ext.EventObject
: Number

按键常量

Defaults to: 49

Ext.EventObject
: Number

按键常量

Defaults to: 80

Ext.EventObject
: Number

按键常量

Defaults to: 34

Ext.EventObject
: Number

按键常量

Defaults to: 33

Ext.EventObject
: Number

按键常量

Defaults to: 19

Ext.EventObject
: Number

按键常量

Defaults to: 44

Ext.EventObject
: Number

按键常量

Defaults to: 81

Ext.EventObject
: Number

按键常量

Defaults to: 82

Ext.EventObject
: Number

按键常量

Defaults to: 13

Ext.EventObject
: Number

按键常量

Defaults to: 39

Ext.EventObject
: Number

按键常量

Defaults to: 83

Ext.EventObject
: Number

按键常量

Defaults to: 55

Ext.EventObject
: Number

按键常量

Defaults to: 16

Ext.EventObject
: Number

按键常量

Defaults to: 54

Ext.EventObject
: Number

按键常量

Defaults to: 32

Ext.EventObject
: Number

按键常量

Defaults to: 84

Ext.EventObject
: Number

按键常量

Defaults to: 9

Ext.EventObject
: Number

按键常量

Defaults to: 51

Ext.EventObject
: Number

按键常量

Defaults to: 50

Ext.EventObject
: Number

按键常量

Defaults to: 85

Ext.EventObject
: Number

按键常量

Defaults to: 38

Ext.EventObject
: Number

按键常量

Defaults to: 86

Ext.EventObject
: Number

按键常量

Defaults to: 87

Ext.EventObject
: Number
鼠标滚轮增量的比例因子。此值取决于浏览器版本和操作系统, 并尝试跨所有平台和浏览器产生类似的滚动体验。 ...

鼠标滚轮增量的比例因子。此值取决于浏览器版本和操作系统, 并尝试跨所有平台和浏览器产生类似的滚动体验。

若要更改此值:

 Ext.EventObjectImpl.prototype.WHEEL_SCALE = 72;
Ext.EventObject
: Number

按键常量

Defaults to: 88

Ext.EventObject
: Number

按键常量

Defaults to: 89

Ext.EventObject
: Number

按键常量

Defaults to: 90

Ext.EventObject
: Number

按键常量

Defaults to: 48

Ext.EventObject
altKey : Boolean

True表示事件触发时是有按下alt键的。

True表示事件触发时是有按下alt键的。

Ext.EventObject
: RegExpprivate

一个简单的正则表达式,用来匹配click/dblclick事件

Defaults to: /(dbl)?click/

Ext.EventObject
: Boolean

True表示事件触发时是有按下ctrl键的。 在 Mac 中当 meta 键按下时也会返回true。

本身 获取当前类的引用,此对象被实例化。不同于 statics, this.self是依赖范围,它意味着要使用动态继承。 ...

本身

获取当前类的引用,此对象被实例化。不同于 statics, this.self是依赖范围,它意味着要使用动态继承。 参见 statics 详细对比

Ext.define('My.Cat', {
    statics: {
        speciesName: 'Cat' // My.Cat.speciesName = 'Cat'
    },

    constructor: function() {
        alert(this.self.speciesName); // 依赖 'this'
    },

    clone: function() {
        return new this.self();
    }
});


Ext.define('My.SnowLeopard', {
    extend: 'My.Cat',
    statics: {
        speciesName: 'Snow Leopard'         // My.SnowLeopard.speciesName = 'Snow Leopard'
    }
});

var cat = new My.Cat();                     // alerts 'Cat' 猫
var snowLeopard = new My.SnowLeopard();     // alerts 'Snow Leopard' 雪豹

var clone = snowLeopard.clone();
alert(Ext.getClassName(clone));             // alerts 'My.SnowLeopard'
Ext.EventObject
shiftKey : Boolean

True表示事件触发时是有按下shift键的。

True表示事件触发时是有按下shift键的。

Defined By

Methods

( Object config )private

添加配置

Parameters

Parameters

( Object name, Object member )private

Parameters

( Object xtype )private

添加 Xtype

Parameters

( Array/Arguments ) : Objectdeprecatedprotected
调用原来的方法,这是以前的override重写 Ext.define('My.Cat', { constructor: function() { alert("I'm a cat!"); } }); ...

调用原来的方法,这是以前的override重写

Ext.define('My.Cat', {
    constructor: function() {
        alert("I'm a cat!");
    }
});

My.Cat.override({
    constructor: function() {
        alert("I'm going to be a cat!");

        this.callOverridden();

        alert("Meeeeoooowwww");
    }
});

var kitty = new My.Cat(); // alerts "I'm going to be a cat!"
                          // alerts "I'm a cat!"
                          // alerts "Meeeeoooowwww"

This method has been deprecated since 4.1

版本 使用 callParent 代替.

Parameters

  • : Array/Arguments

    参数的参数,数组或'参数'对象 来自当前方法,例如: this.callOverridden(arguments)

Returns

  • Object

    返回调用重写方法的结果。

( Array/Arguments args ) : Objectprotected

所谓的"parent"方法是指当前的方法。 这是以前的方法派生或重写(参见 Ext.define)。

 Ext.define('My.Base', {
     constructor: function (x) {
         this.x = x;
     },

     statics: {
         method: function (x) {
             return x;
         }
     }
 });

 Ext.define('My.Derived', {
     extend: 'My.Base',

     constructor: function () {
         this.callParent([21]);
     }
 });

 var obj = new My.Derived();

 alert(obj.x);  // alerts 21

这可以用来重写如下:

 Ext.define('My.DerivedOverride', {
     override: 'My.Derived',

     constructor: function (x) {
         this.callParent([x*2]); // 调用原来的My.Derived构造
     }
 });

 var obj = new My.Derived();

 alert(obj.x);  // 现在提示 42

This also works with static methods.

 Ext.define('My.Derived2', {
     extend: 'My.Base',

     statics: {
         method: function (x) {
             return this.callParent([x*2]); // 调用 My.Base.method
         }
     }
 });

 alert(My.Base.method(10);     // alerts 10
 alert(My.Derived2.method(10); // alerts 20

然后,它也可以重写静态方法。

 Ext.define('My.Derived2Override', {
     override: 'My.Derived2',

     statics: {
         method: function (x) {
             return this.callParent([x*2]); // 调用 My.Derived2.method
         }
     }
 });

 alert(My.Derived2.method(10); // 现在提示 40

Parameters

  • args : Array/Arguments

    这个参数, 通过当前方法得到数组或者 arguments 对象, 例如: this.callParent(arguments)

Returns

  • Object

    返回调用父类的方法的结果。

Ext.EventObject
( Number delta )

正确缩放一个给定的滚轮增量。

Parameters

  • delta : Number

    滚轮增量。

( Object config )private

拓展

Parameters

Ext.EventObject
( ) : Number

获取事件的字符值。

Returns

( Object name )private

得到配置项

Parameters

得到初始化配置项

Parameters

Ext.EventObject
( ) : Number

为事件提供一个规格化的keyCode。

Returns

Ext.EventObject
( ) : Numberdeprecated

获取事件X坐标。

This method has been deprecated since 4.0

取而代之的是 getX

Returns

Ext.EventObject
( ) : Numberdeprecated

获取事件y坐标。

This method has been deprecated since 4.0

取而代之的是 getY

Returns

Ext.EventObject
( ) : Ext.util.Point

返回一个对象,包括对象坐标的点对象。

Returns

Ext.EventObject
( String selector, Number/HTMLElement maxDepth, Boolean returnEl ) : HTMLElement

获取相关的目标对象。

Parameters

  • selector : String

    (可选) 一个简易的选择符,用于筛选目标或查找目标的父级元素

  • maxDepth : Number/HTMLElement

    (可选) 搜索的最大深度,数字或是元素(默认为 10 || document.body)

  • returnEl : Boolean

    (可选) True表示为返回Ext.Element的对象而非DOM节点

Returns

  • HTMLElement
Ext.EventObject
( String selector, Number/HTMLElement maxDepth, Boolean returnEl ) : HTMLElement

获取事件的目标对象。

Parameters

  • selector : String

    (可选) 一个简易的选择符,用于筛选目标或查找目标的父级元素

  • maxDepth : Number/HTMLElement

    (可选) 搜索的最大深度,数字或是元素(默认为 10 || document.body)

  • returnEl : Boolean

    (可选) True表示为返回Ext.Element的对象而非DOM节点

Returns

  • HTMLElement
Ext.EventObject
( ) : Number
标准化跨浏览器的鼠标滚轮y-增量。若要获取x-增量信息, 使用getWheelDeltas代替。 ...

标准化跨浏览器的鼠标滚轮y-增量。若要获取x-增量信息, 使用getWheelDeltas代替。

Returns

Ext.EventObject
( ) : Object

获取事件的鼠标滚轮增量。

Returns

  • Object

    按住鼠标滚轮增量的一个对象,具有"X"和"Y"属性。

Ext.EventObject
( ) : Number

获取事件x坐标。

Returns

Ext.EventObject
( ) : Number[]

获取事件的页面坐标。

Returns

Ext.EventObject
( ) : Number

获取事件y坐标。

Returns

( Object config )private

根据名称判断配置项是否存在

Parameters

Ext.EventObject
( ) : Boolean

如果在此事件期间 control, meta, shift 或 alt 按下,则返回 true。

Returns

( Object config ) : Objectprotected
这个类的初始化配置。典型例子: Ext.define('My.awesome.Class', { // 这是默认配置 config: { name: 'Awesome', isAwes...

这个类的初始化配置。典型例子:

Ext.define('My.awesome.Class', {
    // 这是默认配置
    config: {
        name: 'Awesome',
        isAwesome: true
    },

    constructor: function(config) {
        this.initConfig(config);
    }
});

var awesome = new My.awesome.Class({
    name: 'Super Awesome'
});

alert(awesome.getName()); // 'Super Awesome' 超级棒

Parameters

Returns

  • Object

    mixins 混入原型 键-值对

Ext.EventObject
( Ext.Element/HTMLElement target )

使用对象中的数据和(可选)一个新的目标,注入一个DOM事件。 这是一种低级的技术,不可能是由应用程序代码使用。 目前支持的事件类型:

HTMLEvents

  • load
  • unload
  • select
  • change
  • submit
  • reset
  • resize
  • scroll

MouseEvents

  • click
  • dblclick
  • mousedown
  • mouseup
  • mouseover
  • mousemove
  • mouseout

UIEvents

  • focusin
  • focusout
  • activate
  • focus
  • blur

Parameters

  • target : Ext.Element/HTMLElement

    (可选) 如果指定,该事件的目标。 这可能用于接替 DOM 事件。如果未指定, 则getTarget 被用来确定目标。

Ext.EventObject
( ) : Boolean

检查按下的键是否是一个"导航"键

Returns

  • Boolean

    True 表示为按下了一个导航键

Ext.EventObject
( ) : Boolean

检查按下的键是否是一个"特殊的"键

Returns

  • Boolean

    True 表示为按下了一个特殊键

( Object name, Object mixinClass )private

内部使用混入预处理器(mixins pre-processor)

Parameters

Ext.EventObject
( Number key ) : Numberprivate

标准化跨浏览器的键码

Parameters

Returns

( Object names, Object callback, Object scope )private

更新配置项

Parameters

( Object fn, Object scope )private

扩展事件

Parameters

Ext.EventObject
( )

阻止浏览器默认行为处理事件。

( Object config, Object applyIfNotSet )private

设置配置项

Parameters

获取从该对象被实例化的类的引用。 请注意不同于 self, this.statics()是独立的作用域,无论this是否运行,总是返回其中的调用类。

Ext.define('My.Cat', {
    statics: {
        totalCreated: 0,
        speciesName: 'Cat' // My.Cat.speciesName = 'Cat'
    },

    constructor: function() {
        var statics = this.statics();

        alert(statics.speciesName);     // 总是等于'Cat',无论'this'是什么,
                                        // 相当于:My.Cat.speciesName

        alert(this.self.speciesName);   // 依赖 'this'

        statics.totalCreated++;
    },

    clone: function() {
        var cloned = new this.self;                      // 依赖 'this'

        cloned.groupName = this.statics().speciesName;   // 相当于: My.Cat.speciesName

        return cloned;
    }
});


Ext.define('My.SnowLeopard', {
    extend: 'My.Cat',

    statics: {
        speciesName: 'Snow Leopard'     // My.SnowLeopard.speciesName = 'Snow Leopard'
    },

    constructor: function() {
        this.callParent();
    }
});

var cat = new My.Cat();                 // alerts 'Cat', 然后提示 'Cat'

var snowLeopard = new My.SnowLeopard(); // alerts 'Cat', 然后提示 'Snow Leopard'

var clone = snowLeopard.clone();
alert(Ext.getClassName(clone));         // alerts 'My.SnowLeopard'
alert(clone.groupName);                 // alerts 'Cat'

alert(My.Cat.totalCreated);             // alerts 3

Returns

Ext.EventObject
( )

停止事件(preventDefault 和 stopPropagation)

Ext.EventObject
( )

取消事件冒泡。

配置扩展

Ext.EventObject
( String/HTMLElement/Ext.Element el, Boolean related, Boolean allowEl ) : Boolean

如果此事件的目标对象是el的子级,则返回true。除非设置allowEl参数,如果目标对象是在el,它将返回false。 用法示例:

// 处理任何元素的子元素上的单击事件
Ext.getBody().on('click', function(e){
    if(e.within('some-el')){
        alert('Clicked on a child of some-el!');
    }
});

// 处理直接在一个元素上的单击事件,忽略了子节点上的单击事件
Ext.getBody().on('click', function(e,t){
    if((t.id == 'some-el') && !e.within(t, true)){
        alert('Clicked directly on some-el!');
    }
});

Parameters

  • el : String/HTMLElement/Ext.Element

    id,DOM元素或要检查的Ext.Element

  • related : Boolean

    (可选) 如果为 true,测试相关的目标对象是在 el 而非目标对象

  • allowEl : Boolean

    (可选) 如果为 true,还检查传递的元素是否是目标对象或相关的目标对象

Returns