2014-04-05 96 views
1

我想聽一個關鍵筆劃,然後使用jquery將按下的鍵輸出到class = letter元素內的每個span元素中。 在同一時間我想保留鍵盤快捷鍵原生瀏覽器的基本功能,例如。 shift + cmd +]; cmd + r; CTRL + TAB等等jquery:輸出按鍵到html

<div class="letter"> 
<span>a</span> 
</div> 

這個jQuery工作得非常好於檢測和outputing,我找的按鍵。

$(window).on("keypress", function (e) { 
       var t = e.which || e.keyCode; 
       if (e.which === 0 && e.keyCode > 0) return; 
        var n = String.fromCharCode(t); 
        $(".letter").find("span").html(n); 

       e.preventDefault(); 
     }); 

現在我需要以某種方式排除的快捷方式,但我想保持e.preventDefault();行,因爲它的靜音「錯了按鈕」的聲音......

+0

什麼按鍵特別是你想檢測? – Mottie

+0

字母,數字,任何可從鍵盤訪問的可表示爲字形的東西。 – dyb

回答

1

也許你需要做的是檢測ALT,CTRL和元鍵(demo):

$(window).on("keypress", function (e) { 
    var t = e.which || e.keyCode; 
    if (e.which === 0 && e.keyCode > 0 || e.altKey || e.ctrlKey || e.metaKey) { 
     return; 
    } 
    var n = String.fromCharCode(t); 
    $(".letter").find("span").html(n); 
    e.preventDefault(); 
}); 
+0

我想保持alt功能,所以我只剩下ctrl和meta。效果很好!謝謝! – dyb