首頁 >web前端 >js教程 >如何在 JavaScript 和 jQuery 中擷取箭頭擊鍵?

如何在 JavaScript 和 jQuery 中擷取箭頭擊鍵?

Patricia Arquette
Patricia Arquette原創
2024-10-29 08:50:021098瀏覽

How Can I Capture Arrow Keystrokes in JavaScript and jQuery?

使用 JS 和 jQuery 捕獲箭頭鍵

將函數綁定到 Javascript 和 jQuery 中的箭頭鍵是鍵盤導航的常見要求。雖然 jQuery 的 js-hotkey 插件擴展了內建綁定功能,但它缺乏對箭頭鍵的支援。

為了解決這個問題,這裡有一個簡單的解決方案:

<code class="javascript">document.onkeydown = function(e) {
    switch(e.which) {
        case 37: // left
        break;

        case 38: // up
        break;

        case 39: // right
        break;

        case 40: // down
        break;

        default: return; // exit this handler for other keys
    }
    e.preventDefault(); // prevent the default action (scroll / move caret)
};</code>

此程式碼擷取使用 switch 語句的左、上、右和下箭頭鍵的擊鍵。您可以在每種情況下定義所需的操作。

請注意,對於不支援which屬性的瀏覽器(例如​​IE8),請修改函數體如下:

<code class="javascript">document.onkeydown = function(e) {
    e = e || window.event;
    switch(e.which || e.keyCode) {
        case 37: // left
        break;

        // ...
    }
};</code>

或者,對於現代瀏覽器,KeyboardEvent.key 屬性可用於偵測箭頭鍵,如下例所示:

<code class="javascript">document.onkeydown = function(e) {
    switch(e.key) {
        case "ArrowLeft": // left
        break;

        // ...
    }
};</code>

透過實作此程式碼,您可以輕鬆地將函數綁定到JavaScript 中的箭頭鍵或jQuery 應用程式。

以上是如何在 JavaScript 和 jQuery 中擷取箭頭擊鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn