## 10.1 事件流
**事件流**描述的是從頁面中接受事件的順序。
### 10.1.1 事件冒泡
IE的事件流叫做**事件冒泡**,即事件開始時由最具體的元素(文檔中嵌套層次最深的那個節點)接收,然后逐級向上傳播到較為不具體的節點(文檔)。
### 10.1.2 事件捕獲
Netscape團隊提出的另一種事件流叫做**事件捕獲**。事件捕獲的思想是不太具體的節點應該更早接收到事件,而具體的節點應該最后接收到事件。事件捕獲的用意在于在事件到達預定目標之前捕獲它。
*由于老版本的瀏覽器不支持事件捕獲,因此很少有人使用事件捕獲。建議讀者放心地使用事件冒泡,在有特殊需要時再使用事件捕獲。*
### 10.1.3 DOM事件流
DOM2級事件規定的事件流包括三個階段:事件捕獲階段、處于目標階段和事件冒泡階段。
在DOM事件流中,實際的目標在捕獲階段不會接收到事件,處于目標階段,時間在元素上發生,并在事件處理中被看成冒泡階段的一部分。然后冒泡階段發生,事件又傳播回文檔。*但多數瀏覽器都會在捕獲階段觸發事件對象上的事件。結果有兩個機會在目標對象上面操作事件。*
- 前言
- 第一章 JavaScript簡介
- 第三章 基本概念
- 3.1-3.3 語法、關鍵字和變量
- 3.4 數據類型
- 3.5-3.6 操作符、流控制語句(暫略)
- 3.7函數
- 第四章 變量的值、作用域與內存問題
- 第五章 引用類型
- 5.1 Object類型
- 5.2 Array類型
- 5.3 Date類型
- 5.4 基本包裝類型
- 5.5 單體內置對象
- 第六章 面向對象的程序設計
- 6.1 理解對象
- 6.2 創建對象
- 6.3 繼承
- 第七章 函數
- 7.1 函數概述
- 7.2 閉包
- 7.3 私有變量
- 第八章 BOM
- 8.1 window對象
- 8.2 location對象
- 8.3 navigator、screen與history對象
- 第九章 DOM
- 9.1 節點層次
- 9.2 DOM操作技術
- 9.3 DOM擴展
- 9.4 DOM2和DOM3
- 第十章 事件
- 10.1 事件流
- 10.2 事件處理程序
- 10.3 事件對象
- 10.4 事件類型
- 第十一章 JSON
- 11.1-11.2 語法與序列化選項
- 第十二章 正則表達式
- 12.1 創建正則表達式
- 12.2-12.3 模式匹配與RegExp對象
- 第十三章 Ajax
- 13.1 XMLHttpRequest對象
- 你不知道的JavaScript
- 一、作用域與閉包
- 1.1 作用域
- 1.2 詞法作用域
- 1.3 函數作用域與塊作用域
- 1.4 提升
- 1.5 作用域閉包
- 二、this與對象原型
- 2.1 關于this
- 2.2 全面解析this
- 2.3 對象
- 2.4 混合對象“類”
- 2.5 原型
- 2.6 行為委托
- 三、類型與語法
- 3.1 類型
- 3.2 值
- 3.3 原生函數