Alt,Ctrl和Shift的Javascript键代码

时间:2010-08-27 02:42:53

标签: javascript jquery

$("#text").bind('keypress', function(e) {
    var code = (e.KeyCode ? e.keyCode : e.which);  
    alert(code);
}

除了 Alt Ctrl Shift 之外,它适用于所有内容。
但在我发现的所有教程中都应该回声17,18,19

为什么?

3 个答案:

答案 0 :(得分:4)

使用.keydown().keyup()

see it in action

jQuery(function($){
  var output = $('.output');
  $("#text1").bind('keypress', function(e) {
    var code = (e.KeyCode ? e.keyCode : e.which);  
    output.text(code);
  });
  $("#text2").bind('keydown', function(e) {
    var code = (e.KeyCode ? e.keyCode : e.which);  
    output.text(code);
  });
  $("#text3").bind('keyup', function(e) {
    var code = (e.KeyCode ? e.keyCode : e.which);  
    output.text(code);
  });
  
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
keypress <input type="text" id="text1"> <br>
keydown <input type="text" id="text2"> <br>
keyup <input type="text" id="text3">

<br><br>
Output: <span class="output"></span>

答案 1 :(得分:1)

您是否考虑过使用jquery.hotkeys扩展名,允许您通过指定字符串进行绑定?

"C-A-q" would bind you to: 

控制 + Alt + q

答案 2 :(得分:0)

使用console.log查找它们可能会更好。您也可以轻松使用一个文本框。

import csv
import string

def remove_cruft(s):
    return s[:-1]

with open('name.csv', 'r') as f:
    reader = csv.reader(f)
    my_list = [[remove_cruft(item) for item in line] for line in reader]

for i in my_list:
  person1 =  i.append('łem')
  person2 =  i.append('łam')
  person3 =  i.append('ło')

print(my_list)

#string.join(...)

为keyup和keypress做同样的事情,以便更好地了解它是如何工作的。

旁注:JavaScript确实难以在手机上书写;)