http://edu.51cto.com/lesson/id-14476.html
//通过处理函数传递事件对象
$('input').bind('click', mydata, function (event) { //接受事件对象参数
alert(event);
});
event对象的属性:
type:事件类型;
target:获得触发元素的DOM;
data:绑定事件处理函数时设置的数据mydata
relatedTarget:移入移出目标点离开或进入的那个DOM元素
currentTarget:事件监听元素的DOM元素,等同于this
pageX/pageY:相对于页面原点的坐标,对于有分页,滚动条的页面是在页面的最顶端
screenX/screenY:屏幕位置
clientX/clientY:当前页面视口的坐标(如果没有分页或滚动条,等同于pageX/pageY)
result:获取上一个相同事件的返回值
timeStamp:获取事件触发的时间戳,对于mouseover/mouseout/mouseenter/mouseleave返回0,对于click返回实际时间戳数值
which:获得鼠标的左中右键,或者键盘按键
altKey/shiftKey/ctrlKey:获取是否按下alt,shift, ctrl按钮
冒泡行为
如果在页面中有多个元素重叠在一起,且这些元素都绑定同一类型的事件,就会出现冒泡行为。
冒泡顺序:从小到大。
可取消事件冒泡:event.stopPropagation();
默认行为
网页元素在操作的时候都有默认行为。
如:
1、右键单击文本框输入区域会弹出系统菜单;
2、点击超链接会跳转到指定页面;
3、点击提交按钮会提交数据。
可以使用方法event.preventDefault()取消默认行为。
可以同时取消冒泡行为和默认行为:
方法1:event.stopPropagation();event.preventDefault();
方法2:直接在处理番薯中返回false;