1. Die beste Methode ist immer noch
objEvtMap[ id+evt ]=function(evt,element)
2. Ereignisbindung
function bindEvent_4_dataBlock() { var arr=$("#table1 li"); arr.each(function(index, element) { $(element).keypress(function(){ alert('keypress'); }); var id="data_aid_"+index; $(element).attr("id","data_aid_"+index); objEvtMap[ id ]=function(evt,element) { if(evt=="down") key_press_hadler($(element)); if(evt=="up") key_press_hadler4up($(element)); if(evt=="left") {}; if(evt=="rit") {} }; }); }
3. Ereignisversand
document.onkeydown=function(event){ var e = event || window.event || arguments.callee.caller.arguments[0]; alert("keycode:"+e.keyCode); if(e && e.keyCode==40 ){//下 //alert('40=下键,39=右键'); var now=$(".selected"); var id=$(now).attr("id"); var func=objEvtMap[id ]; func("down",now); //key_press_hadler(now); return false; }
Tastaturereignisse in js abrufen
<script type="text/javascript" language=JavaScript charset="UTF-"> document.onkeydown=function(event){ var e = event || window.event || arguments.callee.caller.arguments[]; if(e && e.keyCode==){ // 按 Esc //要做的事情 } if(e && e.keyCode==){ // 按 F //要做的事情 } if(e && e.keyCode==){ // enter 键 //要做的事情 } }; </script>
Solange Sie die Aktionen dieser Tasten definieren, reagieren sie, wenn Sie diese Tasten im Browser drücken. Es ist mit allen aktuellen Browsern kompatibel.
Tastaturereignisse in js werden häufig verwendet, daher habe ich die Tastencodes gesammelt, die den Tastaturereignissen entsprechen, um sie zu teilen:
keyCode = BackSpace BackSpace keyCode = Tab Tab keyCode = Clear keyCode = Enter keyCode = Shift_L keyCode = Control_L keyCode = Alt_L keyCode = Pause keyCode = Caps_Lock keyCode = Escape Escape keyCode = space keyCode = Prior keyCode = Next keyCode = End keyCode = Home keyCode = Left keyCode = Up keyCode = Right keyCode = Down keyCode = Select keyCode = Print keyCode = Execute keyCode = Insert keyCode = Delete keyCode = Help keyCode = equal braceright keyCode = exclam onesuperior keyCode = quotedbl twosuperior keyCode = section threesuperior keyCode = dollar keyCode = percent keyCode = ampersand keyCode = slash braceleft keyCode = parenleft bracketleft keyCode = parenright bracketright keyCode = a A keyCode = b B keyCode = c C keyCode = d D keyCode = e E EuroSign keyCode = f F keyCode = g G keyCode = h H keyCode = i I keyCode = j J keyCode = k K keyCode = l L keyCode = m M mu keyCode = n N keyCode = o O keyCode = p P keyCode = q Q at keyCode = r R keyCode = s S keyCode = t T keyCode = u U keyCode = v V keyCode = w W keyCode = x X keyCode = y Y keyCode = z Z keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_ KP_ keyCode = KP_Multiply KP_Multiply keyCode = KP_Add KP_Add keyCode = KP_Separator KP_Separator keyCode = KP_Subtract KP_Subtract keyCode = KP_Decimal KP_Decimal keyCode = KP_Divide KP_Divide keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = F keyCode = Num_Lock keyCode = Scroll_Lock keyCode = acute grave keyCode = comma semicolon keyCode = minus underscore keyCode = period colon keyCode = numbersign apostrophe keyCode = plusminus hyphen macron keyCode = keyCode = copyright registered keyCode = guillemotleft guillemotright keyCode = masculine ordfeminine keyCode = ae AE keyCode = cent yen keyCode = questiondown exclamdown keyCode = onequarter onehalf threequarters keyCode = less greater bar keyCode = plus asterisk asciitilde keyCode = multiply division keyCode = acircumflex Acircumflex keyCode = ecircumflex Ecircumflex keyCode = icircumflex Icircumflex keyCode = ocircumflex Ocircumflex keyCode = ucircumflex Ucircumflex keyCode = ntilde Ntilde keyCode = yacute Yacute keyCode = oslash Ooblique keyCode = aring Aring keyCode = ccedilla Ccedilla keyCode = thorn THORN keyCode = eth ETH keyCode = diaeresis cedilla currency keyCode = agrave Agrave atilde Atilde keyCode = egrave Egrave keyCode = igrave Igrave keyCode = ograve Ograve otilde Otilde keyCode = ugrave Ugrave keyCode = adiaeresis Adiaeresis keyCode = ediaeresis Ediaeresis keyCode = idiaeresis Idiaeresis keyCode = odiaeresis Odiaeresis keyCode = udiaeresis Udiaeresis keyCode = ssharp question backslash keyCode = asciicircum degree keyCode = sterling keyCode = Mode_switch
Verwenden Sie das keyCode-Attribut des Ereignisobjekts, um den Eingabeschlüsselwert zu bestimmen
zB: if(event.keyCode==)alert(“enter!”);
Schlüssel-Wert-Korrespondenztabelle
A X U X B X V X C X W X D X X X E X Y X F X Z X G X X H X X I X X J X X K X X L X X M X X N X X O X X P X X Q X ESC XB R X CTRL X S X SHIFT X T X ENTER XD
Wenn Sie Tastenkombinationen verwenden möchten, können Sie bestimmen, ob diese Tasten gleichzeitig gedrückt werden. Beispielsweise kann die Kombination aus Strg-Taste, Umschalttaste und Alt-Taste bestimmen, ob die Strg-Taste, Umschalttaste usw. und Alt-Taste werden mehrmals gedrückt