preventDefault
是一個(gè) JavaScript 方法,用于取消特定事件的默認(rèn)動(dòng)作。在處理鍵盤事件時(shí),這個(gè)方法可以幫助我們控制或限制某些按鍵的默認(rèn)行為。例如,當(dāng)用戶在輸入框中按下 Enter 鍵時(shí),默認(rèn)情況下會(huì)觸發(fā)表單提交。但在某些場景下,我們希望建立自定義的處理邏輯,而不是讓瀏覽器執(zhí)行默認(rèn)操作。這時(shí)候,就可以使用 preventDefault
方法來實(shí)現(xiàn)。
以下是一個(gè)簡單的示例:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
</head>
<body>
<input type="text" id="myInput" />
<script>
const input = document.getElementById('myInput');
input.addEventListener('keydown', function(event) {
if (event.key === 'Enter') {
event.preventDefault(); // 取消 Enter 鍵的默認(rèn)行為(表單提交)
console.log('Enter 鍵被按下,但默認(rèn)行為已被取消');
}
});
</script>
</body>
</html>
在這個(gè)示例中,當(dāng)用戶在輸入框中按下 Enter 鍵時(shí),通過調(diào)用 event.preventDefault()
,我們?nèi)∠吮韱翁峤坏哪J(rèn)行為,并在控制臺(tái)打印了一條消息。這樣,用戶按下 Enter 鍵時(shí),只會(huì)看到控制臺(tái)的輸出,而不會(huì)觸發(fā)表單提交。