Ext.EventManager

Files

对于登记的事件处理器,能够接受一个常规化的(已作跨浏览器处理的)EventObject的参数, 而非浏览器的标准事件,并直接提供一些有用的事件。 更多"已常规化的事件对象(normalized event objects)"的信息,参见Ext.EventObject

Defined By

Properties

Ext.EventManager
: Numberprivate
另外,允许在通过指定一个延迟值触发的整个 onReady 链(高堆栈负载加载程序) 之前来完成'DOM'监听线程(通常可取用mobWebkit,Gecko) @default 1ms ...

另外,允许在通过指定一个延迟值触发的整个 onReady 链(高堆栈负载加载程序) 之前来完成'DOM'监听线程(通常可取用mobWebkit,Gecko) @default 1ms

Defaults to: 1

Ext.EventManager
: Booleanprivate

检查我们是否已经绑定了全局的onReady监听器

Defaults to: false

Ext.EventManager
: Booleanprivate

检查是否已调用 fireDocReady

Defaults to: false

Ext.EventManager
: Object

当一个DOM事件处理程序运行结束,在将返回浏览器控制之前触发。 这可用于执行清理, 或仅在事件处理程序中的所有代码已经运行之后需要执行的更新任务, 但不应该被执行在一个计时器中,由于浏览器回流/重新绘制的干预将会发生。

Ext.EventManager
: RegExpprivate

为 addListener 的第四个参数解析的选项。

Defaults to: /^(?:scope|delay|buffer|single|stopEvent|preventDefault|stopPropagation|normalized|args|delegate|freezeEvent)$/

Ext.EventManager
readyEvent : Objectprivate

持有任何 onReady 函数的引用

持有任何 onReady 函数的引用

Ext.EventManager
: Objectprivate

doScroll轮询的计时器

Defaults to: null

Ext.EventManager
stoppedMouseDownEvent : Objectprivate

包含鼠标按下的所有文档列表,这样我们可以确保他们触发即使当stopevent被调用。

包含鼠标按下的所有文档列表,这样我们可以确保他们触发即使当stopevent被调用。

Ext.EventManager
: Objectprivate
注 1: IE 只触发 keydown 事件在特殊按键上自动重复 注 2: Safari < 3.1,Gecko (Mac/Linux) & Opera 只触发 keypress 事件在特殊按键上自动重复 (由 Jan ...

注 1: IE 只触发 keydown 事件在特殊按键上自动重复 注 2: Safari < 3.1,Gecko (Mac/Linux) & Opera 只触发 keypress 事件在特殊按键上自动重复 (由 Jan Wolter 研究并完成 http://unixpapa.com/js/key.html)

Defined By

Methods

Ext.EventManager
( String/HTMLElement el, String eventName, Function handler, Object scope, Object options )

加入一个事件处理函数,方法on是其简写方式。 通常您将使用Ext.Element.addListener 直接调用此版本支持的元素上。

Parameters

  • el : String/HTMLElement

    要分配的html元素或者其id。

  • eventName : String

    事件处理函数的名称。

  • handler : Function

    事件处理函数。 该函数会送入以下的参数:

    • evt : EventObject
      用于描述这次事件EventObject的事件对象。
    • t : Element
      事件源对象,类型为Element。 注意该项可能会因delegate选项的筛选而发生变化。
    • o : Object
      调用addListener时送入的选项对象。

  • scope : Object

    (可选) 事件处理函数执行时所在的作用域。(this 引用)。默认为当前元素

  • options : Object

    (可选) 包含句柄配置属性的一个对象。 这可能是包含的任何下列属性:

    • scope : Object
      事件处理函数执行时所在的作用域(this 引用)。默认为当前元素
    • delegate : String
      一个简易选择符,用于过滤目标,或是查找目标的子孙。
    • stopEvent : Boolean
      true表示为阻止事件。即停止传播、阻止默认动作。
    • preventDefault : Boolean
      true表示为阻止默认动作
    • stopPropagation : Boolean
      true表示为阻止事件传播
    • normalized : Boolean
      false表示对处理函数送入一个原始、未封装过的浏览器对象而非标准的Ext.EventObject
    • delay : Number
      触发事件后处理函数延时执行的时间。
    • single : Boolean
      true代表为下次事件触发加入一个要处理的函数,然后再移除本身。
    • buffer : Number
      若指定一个毫秒数会把该处理函数安排到Ext.util.DelayedTask延时之后才执行。 如果事件在那个事件再次触发, 则原句柄将不会被启用,但是新句柄会安排在其位置。
    • target : Element
      只在目标元素触发的事件才有在这句柄上,事件上报中的子元素就没有

    参见Ext.Element.addListener其中的例子以了解这些选项更多的用法。

Ext.EventManager
( )private

绑定适当的浏览器事件以用来检查DOM是否已被加载。

Ext.EventManager
( Object event )private

检查是否事件的relatedtarget被包含在(或)当前元素。

Parameters

Ext.EventManager
( HTMLElement dom, String ename, Function fn, Object scope, Object options ) : Functionprivate

为事件创建包装函数

Parameters

  • dom : HTMLElement

    dom元素

  • ename : String

    事件名称

  • fn : Function

    要执行的函数

  • scope : Object

    要执行的回调函数的作用域

  • options : Object

    选项对象

Returns

Ext.EventManager
( )private

我们知道文档被加载,所以触发任何 onReady 事件。

Ext.EventManager
( )private

触发已就绪的事件

Ext.EventManager
( )private

触发resize事件。

Ext.EventManager
( )private

触发绑定 onWindowUnload 选项的 unload 事件

Ext.EventManager
( HTMLElement element, Object eventName ) : Arrayprivate

获得对某一特定事件,特定元素的事件缓存

Parameters

  • element : HTMLElement

    元素

  • eventName : Object

    事件名称

Returns

Ext.EventManager
( HTMLElement/Ext.Element element ) : String

获取元素的id。如果未分配,则将自动分配。

Parameters

  • element : HTMLElement/Ext.Element

    要获取 id 的元素。

Returns

Ext.EventManager
( ) : String

表示用于获取按键的事件。

Returns

  • String

    相应的事件名称。

Ext.EventManager
( Object event ) : Number

获取事件X坐标。

Parameters

Returns

Ext.EventManager
( Object event ) : Number[]

获取事件X和Y坐标。

Parameters

Returns

Ext.EventManager
( Object event ) : Number

获取事件Y坐标。

Parameters

Returns

Ext.EventManager
( Object event ) : HTMLElement

获取事件相关的目标对象。

Parameters

Returns

  • HTMLElement

    相关的目标对象。

Ext.EventManager
( Object event ) : HTMLElement

获取事件的目标对象。

Parameters

Returns

  • HTMLElement

    目标对象

Ext.EventManager
( )private
检测是否 EventManager 一直处于暂停状态, 并与外部调试/性能工具同步(页面分析器) ...

检测是否 EventManager 一直处于暂停状态, 并与外部调试/性能工具同步(页面分析器)

Ext.EventManager
( Object eventName, Object fn ) : Objectprivate

标准化跨浏览器事件的差异

Parameters

  • eventName : Object

    事件名称

  • fn : Object

    要执行的函数

Returns

  • Object

    新生成的事件名称/函数

Ext.EventManager
( )
Ext.EventManager
( Function fn, Object scope, Boolean options )

当Document准备好的时候触发(在onload之前和在图片加载之前)。 可以简写为 Ext.onReady()。

Parameters

  • fn : Function

    执行的函数。

  • scope : Object

    (可选) 处理函数执行的作用域(this 引用)。默认为浏览器的 window。

  • options : Boolean

    (可选) 作为传递参数给Ext.Element.addListener的选项对象。

Ext.EventManager
( Function fn, Object scope, Boolean options )
当window改变大小后触发,并有随改变大小的缓冲(100 毫秒), 对回调函数传入新视图的高度、宽度的参数。 ...

当window改变大小后触发,并有随改变大小的缓冲(100 毫秒), 对回调函数传入新视图的高度、宽度的参数。

Parameters

Ext.EventManager
( Function fn, Object scope, Boolean options )

当浏览器的window触发onunload事件时添加一个要通知的监听器。

Parameters

  • fn : Function

    window的unload事件触发时调用的处理函数。

  • scope : Object

    处理函数执行的作用域(this 引用)。默认为浏览器的 window。

  • options : Boolean

    传递给Ext.Element.addListener的选项对象

Ext.EventManager
( )

这个策略对于Sencha构建自己的解决方案有极小的好处(即最小初始页面标记)。 然而,逐步增强的页面(图像的内容和/或嵌入式框架)将大受益处。 浏览器计时器分辨率太差,在一个页面加载并以最小的资源,无法确保doScroll不止一次的检查, ("完整"的 ReadyStateChange 事件在"轻载"的初始文件上通常胜过 doScroll 计时器)。

Ext.EventManager
( Object element, Object event, Object isRemove )private

将"配置式"监听器转换成一组平面参数,这样他们就可以传递给addListener

Parameters

  • element : Object

    该事件的元素

  • event : Object

    事件配置

  • isRemove : Object

    true则将执行移除,否则将执行添加。

Ext.EventManager
( Event event )

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

Parameters

  • event : Event

    要阻止默认行为的事件

Ext.EventManager
( String/HTMLElement el, String eventName )
递归移除指定元素及其子元素上之前添加的所有事件监听器。通常,您将使用 Ext.Element.purgeAllListeners 直接在此版本所支持的元素上调用。 ...

递归移除指定元素及其子元素上之前添加的所有事件监听器。通常,您将使用 Ext.Element.purgeAllListeners 直接在此版本所支持的元素上调用。

Parameters

  • el : String/HTMLElement

    要删除所有事件处理程序的 id 或 html 元素。

  • eventName : String

    (可选) 事件名称。

Ext.EventManager
( String/HTMLElement el )

移除某个元素所有的事件处理器。 一般而言你直接在元素身上调用 Ext.Element.removeAllListeners 方法即可。

Parameters

  • el : String/HTMLElement

    要从中移除所有事件处理函数的 id 或 html 元素。

Ext.EventManager
( String/HTMLElement el, String eventName, Function fn, Object scope )

移除事件处理器(event handler),跟简写方式un是一样的。 通常你会更多的使用元素本身Ext.Element.removeListener的方法。

Parameters

  • el : String/HTMLElement

    欲移除事件的html元素或id。

  • eventName : String

    事件的名称。

  • fn : Function

    要移除的事件处理函数。这必须是传递到addListener调用函数的一个引用。

  • scope : Object

    如果添加监听器时指定作用域(this 引用), 那么this必须指向同一个对象。

Ext.EventManager
( Function fn, Object scope )

移除传入的窗口大小调整监听器。

Parameters

Ext.EventManager
( Function fn, Object scope )

移除传递给 window 的 unload 事件监听器。

Parameters

  • fn : Function

    要移除的事件处理函数

  • scope : Object

    事件处理函数的作用域

Ext.EventManager
( HTMLElement node ) : HTMLElementprivate

解决任何文本节点在浏览器中的差异。

Parameters

  • node : HTMLElement

    节点

Returns

  • HTMLElement

    处理后的节点

Ext.EventManager
( Event event )

停止事件(preventDefault和stopPropagation)。

Parameters

  • event : Event

    要停止的事件

Ext.EventManager
( Event event )

取消事件冒泡。

Parameters

  • event : Event

    要取消冒泡的事件

Ext.EventManager
( )