事件:
三要素:
事件对象:事件的绑定对象
事件名称:事件的种类 on-事件名
事件处理函数:事件触发之后要做什么
写法:
HTML事件:
将事件依属性的形式写入到页面标签中
优点:简单易懂
缺点:js代码与html耦合度太高,不利于多人协作
脚本模型(现代事件绑定):
在js中完成事件的绑定
W3C事件:
事件种类:
鼠标事件:
click dblclick
mouseover mouseout
mouseenter mouseleaver
mousedown mouseup mousemove
其他事件:
load//页面加载完毕 change//内容发生改变
焦点:
focus获得焦点 blur失去焦点
键盘事件:
keydown keyup keypress
window.onresize//窗口尺寸改变事件
事件对象:对事件的一个抽象
当事件触发时,系统会产生一个事件对象,并且将这个对象传递给事件函数 注意:IE9以下拿不到不兼容
pageX pageY 当前出触发的时候鼠标的位置
clientX clientY IE低版本和其他浏览器都兼容
screenX screenY
事件的兼容性写法:e = e||window.event
perventDefault();拦截默认行为
事件流:
冒泡:事件有最具体的对象触发,层层向外传递,直到最外层元素。
捕获:由最外层触发,层层向内传递,直到最底层元素
阻止冒泡机制;e.stopPropagation()
低版本IE中:window.event.cancelBubble=true;