dom事件標準定義了兩種事件流,這兩種事件流有著顯著的不同並且可能對你的應用有著相當大的影響。這兩種事件流分別是捕獲和冒泡。和許多web技術一樣,在它們成為標準之前,netscape和微軟各自不同地實現了它們。netscape選擇實現了捕獲事件流,微軟則實現了冒泡事件流。幸運的是,w3c決定組合使用這兩種方法,並且大多數新瀏覽器都遵循這兩種事件流方式。
事實上,捕獲階段是乙個和冒泡階段完全相反的過程,即事件由祖先元素向子元素傳播,和乙個石子兒從水面向水底下沉一樣,要說明的是在 ie,opera瀏覽器中,是不存在這個階段的。從各瀏覽器提供的註冊事件監聽的方法中可見一斑,例如適用於ie,opera的attachevent, 有兩個引數,attachevent(」on」+type,fn),而適用於所謂標準瀏覽器的addeventlistener則有三個參 數,addeventlistener(type,fn,
boolean
),前面兩個引數不用解釋,第三個引數boolean,就是決定註冊事件發生在捕 獲階段還是冒泡階段
demo:
one two
three
four
事件捕獲與事件冒泡
事件傳播模型 事件捕獲和事件冒泡兩個過程 即事件先到達根元素,再從根元素一層一層向下傳播到目標元素,然後再一層一層向上傳到根元素。one twothree four var one document.getelementbyid one var two document.getelementbyid...
事件冒泡與事件捕獲
兩種模型 以前,netscape和microsoft是不同的實現方式。netscape中,div先觸發,這就叫做事件捕獲。microsoft中,p先觸發,這就叫做事件冒泡。兩種事件處理順序剛好相反。ie只支援事件冒泡,mozilla,opera 7 和 konqueror兩種都支援,舊版本的oper...
事件流(事件冒泡與事件捕獲)
dom結構是乙個樹形結構,當乙個html元素發生乙個事件時,該事件會在元素節點與根節點之間的路徑傳播,路徑所經過的節點都會收到該事件,這個傳播過程就是dom事件流。分為事件冒泡模型和事件捕獲模型和dom標準事件模型 是由ie開發團隊提出來的,從dom樹形結構上理解就是事件由葉子節點沿祖先節點一直向上...