事件
什么是事件
事件就是在文档中或者在浏览器窗口中通过某些动作触发。比如,单击,鼠标经过,键盘按下等。事件通常和函数结合使用。
事件流
可以理解为当事件发生时,响应事件的顺序。这个顺序就按照一个流进行的。这就是事件流。这个流是从里向外流,还是从外向里流那??不同的浏览器事件流的流向不太一样。
事件冒泡
定义:IE提出的事件是事件冒泡,就是事件开始时从最具体的元素接收,然后逐级向上传播到到较为不具体的节点
<div id="div">
<button id="btn">点击</button>
</div>
var btn = document.getElementById('btn');
var div = document.getElementById('div');
function btnClick() {
console.log('点击了btn')
}
function divClick() {
console.log('点击了div')
}
function bodyClick() {
console.log('点击了body')
}
事件捕获
定义:网景公司提出的是事件捕获,思想是和事件冒泡相反,不太具体地节点应该更早接收到事件,而最具体的节点应该最后接收到事件。
btn.addEventListener('click', function() {
console.log('btn点击了')
}, false)
div.addEventListener('click', function() {
console.log('div点击了')
}, false)