Page 32 - JavaScript修炼之道
P. 32
任务8 监听及停止监听事件 19
在某个元素上监听某个事件
// Prototype
$(element).observe('event', handlerFx)
// jQuery
$(elementOrSelector).bind('event', handlerFx)
// MooTools
$(element).addEvent('event', handlerFx)
// YUI 3
Y.on('event', handlerFx, elementOrSelector)
// Dojo(handlerFx既可以是上下文无关的函数, 也可以是上下文相关的方法)
dojo.connect(element, 'event', handlerFx)
// Ext
Ext.get(element).on('event', handlerFx)
在多个元素上监听某个事件
// Prototype
elements.invoke('observe', 'event', handlerFx)
// jQuery
$(elements).bind('event', handlerFx)
// YUI 3
Y.on('event', handlerFx, elementOrSelector)
// Dojo
dojo.query(selector).connect('event', handlerFx)
// Ext, for on-DOM-readiness bindings:
Ext.addBehaviors({ 'selector@event': handlerFx... })
停止监听
// Prototype
$(element).stopObserving('event', handlerFx)
// jQuery
$(elementOrSelector).unbind('event', handlerFx)
// MooTools
$(element).removeEvent('event', handlerFx)
// YUI 3
Y.detach('event', handlerFx, elementOrSelector)
// Dojo
dojo.disconnect(handleReturnedByConnect)
// Ext (注意, 这里是"un"而不是"on"……)
Ext.get(element).un('event', handlerFx)
相关任务
任务7
任务9
任务10