事件冒泡简介:
- 事件触发时由里到外 冒泡
- IE678:div > body > html > document
- 其他浏览器: div > body > html > document > window
- 不冒泡blur、focus load、unload
阻止冒泡
- stopPropagation();
阻止冒泡的兼容性写法:
- IE678:event.cancelBubble = true;
- 正常:event.stopPropagation( );
-if ( event.stopPropagation ){ event.stopPropagation(); } else { event.cancelBubble = true;}
阻止浏览器的默认行为 :
- e.preventDefault();
旧版本 ie:
- window.event.returnValue = false;
这里提及了事件,顺便写下事件目标的兼容写法:
- 正常浏览器:event.target
- IE6、7、8: event.srcElement
var target = event.target || event.srcElement
事件发生时,浏览器默认执行三个阶段:
1. 捕获阶段
2. 目标阶段
3. 冒泡阶段