【jquery事件】
$(document).ready(fn) | $(fn) | jQuery(function($){}) //当前文档结构载入完毕后
eventName(data, function(e){ "return false"等价于"e.stopPropagation()" })
click //点击(鼠标向下并且向上)
dblclick //双击
mousedown //鼠标向下
mouseup //鼠标向上
mouseenter //鼠标进入,仅1次
mouseleave //鼠标离开,仅1次
mouseover //鼠标经过,可多次
mouseout //鼠标离开,可多次
mousemove //鼠标移动
focus //获得焦点---监测当前DOM
focusin //获得焦点---监测当前DOM的子孙
blur //失去焦点---监测当前DOM
focusout //失去焦点---监测当前DOM的子孙
keydown //键盘按键向下
keyup //键盘按键向上
keypress //键盘按键向下,仅支持能够打印字符的键
change //表单的文本内容(失焦时)或选项被更改时,仅支持:<input type="text"> | <textarea> || <select>
select //表单的文本内容被选中时,仅支持:<input type="text"> | <textarea>
submit //提交表单时 \\form.submit()
scroll //滚动条位置发生改变时
resize //仅用于window
error //js发生错误或url加载失败时 \\主要用于window对象、<img>等元素 \\$('img').error(function(){ $(this).hide() })
//事件的命名空间类似class
on(events, [selector], [data], fn) //全能型 绑定事件处理函数|事件处理程序
on(events-map, [selector], [data])
var events-map = { 'click': fn, 'dbclick': fn }
one(events, [data], fn) //绑定一次性事件处理函数
off(events, [selector], [fn]) //移除事件处理函数|事件处理程序 \\.off('.xxx'),trigger时必须带事件名click.xxx
off(events-map, [selector])
selector:必须与on()函数传入的选择器一致
trigger(type, [data]) //触发某类事件,data为传给事件处理函数的附加参数 \\.trigger('click.xxx', [arg1, arg2, ...])
triggerHandler(type, [data]) //同上,并且:1、阻止事件冒泡 2、阻止默认行为 3、只针对.eq(0) 4、返回最后一个事件处理函数的返回值
hover(f1, f2) //基于mouseenter和mouseleave的实现
hover(f)
【jquery事件对象】
e.target //最初触发事件的DOM
e.currentTarget //事件在冒泡阶段中的当前DOM,通常全等于this
e.delegateTarget //负责绑定当前被调用的事件处理函数的DOM
e.preventDefault() //阻止事件默认行为,a、submit ...
e.isDefaultPrevented()
e.stopPropagation() //阻止事件冒泡
e.isPropagationStopped()
e.stopImmediatePropagation() //只执行第一个事件处理函数 && 阻止事件冒泡
e.isImmediatePropagationStopped()
e.pageX //相对于document
e.pageY //相对于document
e.namespace //触发器中所指定的命名空间 \\.trigger(click.b.a.x)则输出x.a.b
e.type \\常用于多事件的集中写法
e.data //绑定当前事件处理函数时传递的附加数据
e.which //触发当前事件时的按键值(键盘或鼠标) \\用数值区间分类
e.result //上一个事件处理函数的返回值 \\实现代码分层:提交表单时做表单验证,再根据验证结果做相应处理
e.relatedTarget //被离开的DOM---mouseenter/mouseover | 被进入的DOM---mouseleave/mouseout | 被获得焦点的DOM(支持焦点的DOM) | 被失去焦点的DOM(支持焦点的DOM)
e.timeStamp \\用于性能分析