<input> 中按 ↑ 光標跳到開頭,按 ↓ 跳到結尾,需禁用此默認行為但保留字符輸入。
<input type="text" onkeydown="if(event.keyCode===38||event.keyCode===40) return false;" />
keydown 事件中返回 false 取消默認動作(瀏覽器原生行為)。keyCode 38 = ↑,40 = ↓。document.getElementById('myInput').addEventListener('keydown', function(e) {
if (e.key === 'ArrowUp' || e.key === 'ArrowDown') {
e.preventDefault(); // 標準取消默認行為
}
});
e.key 代替已棄用 keyCode。preventDefault() 比返回 false 更語義清晰、不影響事件冒泡。若輸入框需支持多行(textarea),上下鍵默認換行,**不應禁用**,需根據具體業務決定。