千鋒教育JavaScript全套視頻教程(10天學(xué)會Js,前端javascrip

?事件流(事件執(zhí)行機制)
? ? ? ? ? ? ? ? 就是當(dāng)我們的事件觸發(fā)的時候 事件的這個 行為 會沿著結(jié)構(gòu)父級向上傳播 直到window
? ? ? ? ? ? ? ? 如果在結(jié)構(gòu)父級上也有同類型事件也會被觸發(fā)
? ? ? ? ? ? 事件流(事件三個階段)
? ? ? ? ? ? ? ? 捕獲階段: 是從window 到 準確觸發(fā)事件的目標元素的過程
? ? ? ? ? ? ? ?目標階段: 就是準確觸發(fā)事件的那個元素
? ? ? ? ? ? ? ? 冒泡階段: 是從準確觸發(fā)事件的那個元素 到 window 一個過程
? ? ? ? ? ? 歷史問題
? ? ? ? ? ? ? ? 就是我們的標準瀏覽器中默認是在冒泡階段執(zhí)行
? ? ? ? ? ? ? ? 但是保留在捕獲階段執(zhí)行的能力
? ? ? ? ? ? ? IE中只支持在冒泡階段執(zhí)行
? ? ? ? ? ? 想要在捕獲階段執(zhí)行
? ? ? ? ? ? ? ? 不能使用 DOM 0 級事件綁定的方式綁定事件
? ? ? ? ? ? ? ? 需要使用DOM 2 級事件綁定的方式來綁定事件
? ? ? ? ? ? ? ? 同時需要傳遞第三個參數(shù)
? ? ? ? ? ? ? ? ?這個參數(shù)是一個布爾值
? ? ? ? ? ? ? ? ? ? 默認是 false 表示的是在冒泡階段執(zhí)行
? ? ? ? ? ? ? ? ? ? 選填是 true 表示的是在捕獲階段執(zhí)行
?阻止事件冒泡
? ? ? ? ? ? ? ? ?就是因為我們的事件默認是在冒泡階段執(zhí)行
? ? ? ? ? ? ? ? ?有的時候我不想不需要這個時候來觸發(fā)這個行為
? ? ? ? ? ? ? ? ?你執(zhí)行你的就好了不用管我的
? ? ? ? ? ? 如何來阻止事件冒泡
? ? ? ? ? ? ? ? ?標準瀏覽器
? ? ? ? ? ? ? ? ? ? 語法: 事件對象.stopPropagation()
? ? ? ? ? ? ? ? ?IE低版本
? ? ? ? ? ? ? ? ? ? ?語法: 事件對象.cancelBubble = true
? ? ? ? ? ? 兼容
? ? ? ? ? ? ? ? ?語法: try {} catch () {}
? ? ? ? ? ? ? ? ?如果try后面的大括號中的代碼沒有問題
? ? ? ? ? ? ? ? ?那么就執(zhí)行try后面的大括號中的代碼
? ? ? ? ? ? ? ? ?如果try和面的大括號中的代碼報錯不執(zhí)行
? ? ? ? ? ? ? ? ?會把錯誤信息傳遞到catch中這個時候執(zhí)行catch中的代碼