JavaScript&JQuery-網站互動設計程式進化之道-Events
學習筆記(5)
偉大的才能比偉大的成功更不尋常 - 沃維納格
引言
原文書名:JavaScript & JQuery: Interactive Front-End Web Development
作者:Jon Duckett
譯者:謝銘倫
出版社:碁峰
出版日期:2017/02/24
六、事件 Events
互動事件
- 使用者介面事件
1 | window.addEventListener('load', setup, false); //load |
- 鍵盤事件
1 | lastkey.textContent = 'Last key in ASCII code: ' + e.keyCode; // e.keyCode |
- 滑鼠事件
1 | elClose.addEventListener('click', dismissNote, false); // Click |
- 聚焦事件
1 | el.addEventListener('focus', tipUsername, false); // focus |
- 表單事件
1 | elForm.addEventListener('submit', checkTerms, false); //submit送出前驗證 |
- 變動事件:DOM結構變更時
1 | elList.addEventListener('DOMNodeInserted', updateCount, false); // DOM節點插入 |
- HTML5事件
1 | //DOMContentLoaded,DOM樹建立時啟動,快過load事件 |
DOM事件
- DOM事件處理器
1 | var elUsername = document.getElementById('username'); |
- DOM事件監聽器(呼叫多個函式)
1 | var elUsername = document.getElementById('username'); |
- event物件
1 | function getTarget(e) { |
- 事件流程
- 事件氣泡(event bubbling):事件從互動的元件向外循序啟動
- 事件捕捉(event capturing):事件從最外層元件向內循序啟動
- 影響:使用指定元件 + 其祖先或後代元件 的事件處理器