簡體   English   中英

如何使以下.keypress事件處理程序起作用?

[英]How can I make the following .keypress event handler work?

我正在嘗試運行下面列出的以下事件處理程序; 它最初是一個按鍵功能,但是我需要配置按鍵。 有人可以在這里解釋我做錯了什么嗎?

$(document).on('keypress', function(event) { 
        if (event.shiftKey) {
            if (event.which === 37) {
                currentPosition = (currentPosition>0) ?    parseInt(currentPosition)-1 : maxFocusablePosition;  
                console.log(' shift + left');

                focusPosition(currentPosition);  
                } 

            else if (event.which === 39) {
                currentPosition = (currentPosition<maxFocusablePosition) ? parseInt(currentPosition)+1 : 0; 
                console.log('shift + right');

                focusPosition(currentPosition);  
                }

        }
    });

生成可打印字符時會觸發keypress事件。 由於您的代碼正在尋找Shift鍵和一個Arrow鍵(這兩個鍵都不產生可打印的字符),因此您不會點擊if語句的任何分支。

您需要使用keyupkeydown

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM