我试图检测用户何时按下文本框中的@键。我可以使用JQuery来处理keyup事件,如此......
$('#target').keyup(function(event) {
});
但是我从这里做什么来测试@角色?我知道我可以使用event.which
来获取密钥代码。但在这种情况下,我还需要检查移位 - 技术上这不是问题,但我知道@key可以使用不同的语言设置移动,我担心这可能会证明是不一致的。也许我错误地担心,我可以依赖它SHIFT + 192
?
理想情况下,我希望以下内容允许以后更容易配置......
event.something == "@";
感谢您的帮助
答案 0 :(得分:6)
尝试检查event.which == 64
,因为64是at符号的ascii(未经过测试,但应该有效)
$("#target").keypress(function(event) {
if ( event.which == 64 ) {
alert("weehee");
}
});
如果失败,您可以在keyup(用户释放密钥)后检查,如果他输入文本字段的最后一个字符是@符号,并采取相应的行动。
晒
答案 1 :(得分:4)
您可能希望使用keypress
事件来测试特定字符而不是密钥。见:http://api.jquery.com/keypress/