C.3 事件方法
为了对用户的行为作出反应,需要使用下面给出的事件方法来注册处理程序。注意,许多DOM元素仅适用于特定的元素类型,本附录没有给出相关的细节。本书第3章详细讨论了事件方法。
C.3.1 绑定
表 C-13
事件方法 | 说 明 |
---|---|
.ready(handler) | 绑定在DOM和CSS完全加载后调用的处理程序handler |
.on(type, [selector],[data], handler) | 绑定在给定类型的事件type 发送到元素时调用的处理程序handler ;如果提供了selector 则执行事件委托 |
.on(events, [selector] , [data]) | 根据events 对象中的事件绑定多个事件处理程序 |
.off(type, [selector], [handler]) | 解除元素上绑定的处理程序 |
.bind(type, [data], handler) | 绑定在给定类型的事件type 发送到元素时调用的处理程序handler ;一般都用.on() 代替 |
.one(type, [data], handler) | 绑定在给定类型的事件type 发送到元素时调用的处理程序handler ,并在handler 被调用后立即解除绑定 |
.unbind([type], [handler]) | 解除元素上绑定的处理程序(可以指定事件类型或处理程序,不指定则解除所有绑定) |
.delegate(selector, type, [data], handler) | 绑定当给定事件发送到与selector 匹配的后代元素后调用的处理程序 |
.delegate(selector, handlers) | 绑定当给定事件发送到与selector 匹配的后代元素后调用的处理程序 |
.undelegate(selector, type, [handler]) | 解除之前通过.delegate() 绑定的到元素上的处理程序 |
C.3.2 简写绑定
表 C-14
事件方法 | 说 明 |
---|---|
.blur(handler) | 绑定当元素失去键盘焦点时调用的处理程序 |
.change(handler) | 绑定当元素的值改变时调用的处理程序 |
.click(handler) | 绑定绑当元素被单击时调用的处理程序 |
.dblclick(handler) | 定当元素被双击时调用的处理程序 |
.error(handler) | 绑定当元素接收到错误事件(取决于浏览器)时调用的处理程序 |
.focus(handler) | 绑定当元素获得键盘焦点时调用的处理程序 |
.focusin(handler) | 绑定当元素或后代元素获得键盘焦点时调用的处理程序 |
.focusout(handler) | 绑定当元素或后代元素失去键盘焦点时调用的处理程序 |
.keydown(handler) | 绑定当元素拥有键盘焦点且有键被按下时调用的处理程序 |
.keypress(handler) | 绑定当元素拥有键盘焦点且有按键事件发生时调用的处理程序 |
.keyup(handler) | 绑定当元素拥有键盘焦点且有键被释放时调用的处理程序 |
.load(handler) | 绑定当元素加载完成时调用的处理程序 |
.mousedown(handler) | 绑定当在元素中按下鼠标键时调用的处理程序 |
.mouseenter(handler) | 绑定当鼠标指针进入元素时调用的处理程序。不受事件冒泡影响 |
.mouseleave(handler) | 绑定当鼠标指针离开元素时调用的处理程序。不受事件冒泡影响 |
.mousemove(handler) | 绑定当在元素中移动鼠标指针时调用的处理程序 |
.mouseout(handler) | 绑定当鼠标指针离开元素时调用的处理程序 |
.mouseover(handler) | 绑定当鼠标指针进入元素时调用的处理程序 |
.mouseup(handler) | 绑定当在元素中释放鼠标键时调用的处理程序 |
.resize(handler) | 绑定当调整元素大小时调用的处理程序 |
.scroll(handler) | 绑定当元素的滚动位置改变时调用的处理程序 |
.select(handler) | 绑定当元素中的文本被选中时调用的处理程序 |
.submit(handler) | 绑定当表单元素被提交后调用的处理程序 |
.unload(handler) | 绑定当元素从内存中被卸载后调用的处理程序 |
.hover(enter, leave) | 绑定在鼠标进入元素时调用的enter 和鼠标离开元素时调用的leave |
C.3.3 触发事件
表 C-15
事件方法 | 说 明 |
---|---|
.trigger(type, [data]) | 触发元素上的事件并执行该事件的默认操作 |
.triggerHandler(type, [data]) | 触发元素上的事件,但不执行任何默认操作 |
C.3.4 简写触发方法
表 C-16
事件方法 | 说 明 |
---|---|
.blur() | 触发blur 事件 |
.change() | 触发change 事件 |
.click() | 触发click 事件 |
.dblclick() | 触发dblclick 事件 |
.error() | 触发error 事件 |
.focus() | 触发focus 事件 |
.keydown() | 触发keydown 事件 |
.keypress() | 触发keypress 事件 |
.keyup() | 触发keyup 事件 |
.select() | 触发select 事件 |
.submit() | 触发submit 事件 |
C.3.5 实用方法
表 C-17
事件方法 | 说 明 |
---|---|
$.proxy(fn,context) | 创建一个新的在指定上下文中执行的函数 |