簡體   English   中英

使用javaScript捕獲按鍵事件

[英]capturing on key press event using javaScript

在下面的示例中, 當按Shift鍵時會調用searchForward
但是, 當按Shift + Tab鍵時,永遠不會調用searchBackward。 請提出建議。

$(document).ready(function() {

    $('textarea').live('keydown', function(e) {
      // var keyCode = e.keyCode || e.which;
        if (e.which == 9 ) {    
        var currentIndex = getCaret($(e.target).get(0))
        searchForward($(e.target), currentIndex);
        return false
        } 
        if (e.shiftkey) {
         var currentIndex = getCaret($(e.target).get(0))
        searchBackward($(e.target), currentIndex);
        return false 
       }
    });
});

在第二個if ,您僅檢查Shift鍵,而不檢查Shift和按下的鍵。 您需要將第二個if循環放入第一個。 另外,我相信你的意思是shiftKey ,而不是shiftkey JavaScript區分大小寫。 看一下更新的代碼段(還將重復代碼移到if之外): JSFiddle

$(document).ready(function() {
    $('textarea').live('keydown', function(e) {
        var currentIndex = getCaret($(e.target).get(0))
        if (e.which == 9 ) {
            if (e.shiftKey) {
                searchBackward($(e.target), currentIndex);
            } else {
                searchForward($(e.target), currentIndex);
            }
            return false
        }
    });
});

另請參見JQuery或JavaScript:如何確定在單擊錨標記超鏈接時是否按下了Shift鍵?

暫無
暫無

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

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