我该如何使用
$('div').bind('keyup', function(e) {
if(e.which == '@') {
}
});
想知道如何获得@
符号keyup
?
使用String.fromCharCode
方法。反函数是"@".charCodeAt(0)
。
将e.which
仅保存有关事件中按下的键的敏感数据keypress
。但是,当按下一个键时,此事件将触发多次。
如果您需要一种可靠的方法来检查事件期间某个键的字符keyup
,请创建字符图。此页面将为您提供帮助。
$('div').bind('keypress', function(e) {
var char = String.fromCharCode(e.which);
if(char == '@') {
}
});
您可以在发布此类问题之前尝试自己
去JSBin做一个简单的测试:
然后,您将确切地知道要寻找什么。
顺便说一句,因为您需要担心所有移动设备和浏览器上的大量问题,我建议您使用indexOf()
它或它的变体,例如:
$("#txt").bind("keyup", function(evt) {
if( $(this).val().indexOf("@") > 0 ) {
// got it
}
});
或者如果您需要知道它是否是最后一个字符:
if( $(this).val().lastIndexOf("@") == $(this).val().length - 1)
{
// got it
}
这似乎工作.. http://jsfiddle.net/jNeH9/2/
$(document).bind('keyup', function(e) {
if(e.which == 50 && e.shiftKey)
{
}
});