JS 事件
事件句柄(事件处理函数、事件监听函数)
HTML事件:标签内添加事件
DOM0级事件,在js中写元素对象.事件=脚本
DOM2级事件,一个事件可以绑定多个监听函数
元素对象.addEventListener(事件对象,事件监听函数,false/true)
事件移除:removeEventListener(事件对象,事件监听函数,false/true),解绑保证参数相同
IE事件流
:
添加事件:addEvent(on+事件名,执行函数)
移出事件:detachEvent(on+事件名,执行函数)
事件捕获:事件对象沿DOM树向下传播,true,先父元素,再孩子
事件冒泡:事件对象沿DOM树向上传播,false,直系亲属树中,点击某元素,亲属树上凡是添加了事件的会被触发,先孩子再父元素
事件event对象属性和方法`:
event.type:事件类型
event.target:点的那个对象
event.currentTarget:事件绑定谁,IE8以下:srcElement
event.preventDefault():阻止默认行为IE8:event.returnValue=false;阻止默认行为
event.stopPropagation():阻止冒泡或者捕获;ie8:event.cancelBubble=true;阻止冒泡
event.clientY:浏览器顶部到鼠标位置
event.pageY:浏览器顶部到鼠标位置+滚动条滚动的长度
event.screenY:屏幕顶部到鼠标位置
onfocus、onblur
onresize:调整浏览器窗口的大小时触发
onscroll:拖动滚动条时触发
onmousedown onmouseup onmousemove
onmouseout onmousein
onkeydown onkeyup keyCode onkeypress(只响应数字和字母)