下面的方法返回来自A-Z和0-9的任何键,当我按下shift键+ 4时,它返回相同的代码52。
function keyUpEvent(e)//onkeyup event
{
var chr = String.fromCharCode(e.keyCode);//converts the keycode into a character
alert(chr);//alerts the character
}
但是当按下shift键的相应键时,我需要显示 $或%。
答案 0 :(得分:5)
我会选择这样的东西:
$(function () {
$(document).on('keyup keydown keypress', function (event) {
if (event.keyCode == 52 && event.shiftKey) {
alert('foo');
}
});
});
答案 1 :(得分:2)
键码仅与键有关。 $
是一个字符,通过两个键Shift和4实现。使用$
时,onkeydown
没有明确的密钥代码
编辑:爱德华曾指出onkeypress
使用了键组合,并且确实有组合键码。每天都学到新东西:)
Here's some code,由MDN提供的onkeydown
示例编辑,用于检测按键密钥代码。
Here's the fiddle使用this S.O. post的帮助更新为Firefox友好版。如果你这样摆动,JQuery解决方案也会起作用。
$等于36
。
答案 2 :(得分:2)
您无法一次检查两个关键事件。您可以尝试使用e.shiftKey来告诉您事件发生时是否按下了shift键。尝试检查:
if(e.keyCode === 53 && e.shiftKey){}
如果您有文本字段,也可以在密钥输入上附加事件并检查'%'。
https://developer.mozilla.org/en-US/docs/DOM/event.shiftKey
感谢Marcel Korpel
答案 3 :(得分:1)
在KeyDown
的{{1}}事件中,请使用:
TextBox