處理網頁元素事件重要功能,在瀏覽網頁時對
DOM元素
操作,例如點擊、滑動、滾動、輸入等等,而這些操作都會觸發相應事件
當某個
DOM元素
一個事件處理函式發生時,會執行某個函式或動作
事件DOM元素
addEventListener()
在 DOM元素
事件處理函式事件處理函式
處理事件<button id="myButton">我的按鈕</button>
const button = document.getElementById("myButton");
button.addEventListener("click", function() {
alert("已經按下去了");
});
按 myButton
時,會觸發 click
事件,handleEvent()
函式會被執行,並顯示一個訊息
匿名函式
和 命名函式
匿名函式
直接在 addEventListener()
指定命名函式
需要先定義,在 addEventListener()
指定事件物件
事件物件
包含有關事件資訊,例如:事件名稱、發生時間和位置等等function handleEvent(event) {
// 處理事件
}
向元素添加事件處理程序
const button = document.querySelector('button');
button.addEventListener('click', function() {
alert('Hello world');
});
<button id="myButton">Click me</button>
// 添加事件處理程序
document.getElementById("myButton").addEventListener("click", function() {
// 事件處理程序
alert("You clicked the button");
});
從元素移除事件處理程序
// 移除事件處理程序
document.getElementById("myButton").removeEventListener("click", function() {
// 事件處理程序
alert("You clicked the button!");
});
甚至可以執行任何 JavaScript代碼
除了 addEventListener()
還提供其他方法來監聽事件,例如:on
屬性和 attachEvent()
click |
點擊 |
---|---|
mousedown |
按下滑鼠左鍵 |
mouseup |
放開滑鼠左鍵 |
mousemove |
移動滑鼠 |
mouseover |
滑鼠懸停在元素上 |
mouseout |
滑鼠移出元素 |
keydown |
按下鍵盤按鍵 |
keyup |
放開鍵盤按鍵 |
scroll |
滾動頁面 |
change |
表單元素值發生變化 |
submit |
表單提交 |
<button onclick="alert('Hello, world!')">Click me</button>
事件監聽
和 事件處理
是 JavaScript
非常重要一個功能,通過事件處理,可以讓網頁更加互動,並且可以根據使用者操作來響應不同需求
資料來源:JavaScript DOM Event (事件處理)