事件三要素:
事件元素,事件类型,【事件对象】
事件对象的产生,必须要有事件
事件对象:拥有处理类型事件的属性和方法
事件的兼容写法:
var e =evt || event;
鼠标对象:
page:相对于大白板的左顶点(常用)
client:局部可视区域的左顶点(不常用)
offset:针对于最近的父元素的左顶点(用于拖拽)
键盘事件对象:
键盘事件源建议设置为document
onkeyup:键盘弹起的时刻触发
onkey down:键盘按下的时刻触发
onkey press:产生一个字符时触发
兼容性写法:var ker=e.kerCode || e.which || e.charCode;
cterl + 回车 = 10(asc码值)
ctrlkey:返回布尔值(e.ctrlKey)
事件流:
当父子元素拥有相同的事件绑定时,触发子或父元素,事件流会按照一定的规则向父或子元素传递
冒泡:事件流按照子元素至父元素的方向触发(内到外)
捕获:内到外
说明:不是所有的事件都有流的传递概念,比如onload,onfocus,onblur就没有
事件阻止
事件阻止冒泡添加在传播源上 e.stopPropagation();
兼容性:e.stopPropagation?e.stopPropagation():e.cancelBubble = true;
阻止浏览器默认事件:
oncontextmenu:鼠标右键单机事件
方法一:
兼容性写法:e.preventDefault?e.preventDefault():e.returnValue = false;
方法二:
return false;