事件冒泡:
当一个元素上的事件被触发时,例如鼠标点击一个按钮。同样的事件将会在这个元素的所有父级元素中被触发一遍,这个过程被称为事件冒泡。这个事件会从原始元素开始一直冒泡到DOM树的最上层。就像水底的一个气泡从水底到水面,会经过水底上的所有水层。
阻止事件冒泡和捕获:
标准浏览器:e.stopPropagation();
IE9之前:event.canceBubble=true;
阻止默认事件:
例如实现点击a标签不跳转:return false; e.preventDefault();
事件委托:
利用事件冒泡的原理,把自己所触发的事件让其父元素代替执行。
DOM0传统事件绑定:
如onclick,会出现同一元素同名事件的覆盖,不支持DOM事件流事件捕获阶段。
DOM1没有事件绑定规范
IE绑定:addEvent(''onclick,function(){}''),不支持捕获。
DOM2事件绑定:addEventListener("click",function(){},true);
参数3为true支持捕获,为false支持冒泡;不会出现同名事件覆盖,支持完整事件流。
事件流:捕获>目标>冒泡
事件绑定是指把事件注册到具体元素上,普通事件是指可以用来注册的事件。