獲取 onKeyDown 事件以在 React 中使用 Div
現代 Web 應用程式必須在每次發生特定瀏覽器事件時偵聽事件並觸發函式以響應使用者操作。這些函式稱為事件處理程式,它們對於在 React 中構建動態應用程式至關重要。
onKeyDown
是 React 中最有用的事件之一。它允許開發人員跟蹤文字輸入並動態驗證其值。
今天的文章將討論如何在 React 中處理 onKeyDown
事件。
React 中的 onKeyDown
事件
onKeyDown
是處理文字輸入的最流行的事件之一。每次使用者在選擇文字輸入欄位時按下任意鍵時都會觸發此事件。
onKeyDown
和類似的 onKeyPress
事件之間的主要區別在於觸發它們的原因。onKeyDown
事件不區分用於鍵入值的鍵(數字、A-z 字母)和其他鍵(例如 shift)。
onKeyPress
僅對產生字母、數字或符號的事件觸發。onKeyDown
被認為是更現代和更廣泛支援的事件。
它也比 onKeyPress
事件更一致,無論你執行的是哪個版本的 React。
onKeyDown
用於 React 中的 div
在正常情況下,開發人員只在文字輸入上監聽 onKeyDown
事件。
<div>
元素通常是包裝器,不接受任何輸入。出於這個原因,<div>
元素的預設行為會阻止 onKeyDown
工作。
不過,無需擔心,因為一個簡單的修復允許我們將 onKeyDown
用於 <div>
元素。如果你想監聽 <div>
上的 onKeyDown
事件,你必須設定 tabIndex
屬性。
該屬性指示 <div>
元素是否可以被聚焦。它還使用 Tab 鍵處理鍵盤導航中元素的順序。
下面是一個可以監聽 onKeyDown
事件的 <div>
元素示例:
class App extends Component {
render() {
return <div tabIndex="0" onKeyDown={() => console.log('key pressed')}>
Some div
</div>;
}
}
你可以在 playcode 上自己試用程式碼。
Irakli is a writer who loves computers and helping people solve their technical problems. He lives in Georgia and enjoys spending time with animals.
LinkedIn