DOM事件的级别
dom0
element.onclick = function(){}dom2
element.addEventListener(‘click’,function(){},false)dom3
element.addEventListener(‘keyup’,function(){},false) //添加了较多的事件类型DOM事件模型
捕获与冒泡
DOM事件流
捕获 目标阶段 冒泡
Dom事件捕获的具体流程
window-document-html-body-......-目标元素
Event对象的常见应用
event.preventDefault() 阻止默认行为
event.stopPropagetion()阻止冒泡
event.currentTarget()绑定元素 事件委托(事件代理)
event.taget()触发事件元素 event.stopImmediatePropagation()
自定义事件
var eve = newEvent('custome')
element.addEventListener('custome',function(){ colsole.log('custome') })
element.dispatchEvent(eve)
var eve = new Event('bb') //自定义事件
div.addEventListener('bb',function(e){
console.log('发生了Bb事件');
console.log(e.target);
}) //div绑定名为‘bb’事件
div.dispatchEvent(eve) //div触发eve事件