我如何使用
$('div').bind('keyup', function(e) {
if(e.which == '@') {
}
});想知道如何获得keyup的@符号吗?
发布于 2011-10-28 00:45:54
使用String.fromCharCode方法。反向函数是"@".charCodeAt(0)。
e.which将只保存有关在keypress事件中按下的键的敏感数据。当一个键被按下时,这个事件将被多次触发。
如果您需要一种可靠的方法来在keyup事件期间检查键的字符,请创建一个字符映射。This page将为您提供帮助。
$('div').bind('keypress', function(e) {
var char = String.fromCharCode(e.which);
if(char == '@') {
}
});发布于 2011-10-28 00:48:02
你可以在发表这样的问题之前先试一试
在JSBin上做一个简单的测试:
http://jsbin.com/afapar/2/edit#javascript,html,live
然后你就会确切地知道要找什么了。
顺便说一句,因为您需要担心所有移动设备和浏览器上的大量问题,所以我建议您使用indexOf()或其变体,例如:
$("#txt").bind("keyup", function(evt) {
if( $(this).val().indexOf("@") > 0 ) {
// got it
}
});或者,如果你想知道它是否是最后一个写的字符:
if( $(this).val().lastIndexOf("@") == $(this).val().length - 1)
{
// got it
}发布于 2011-10-28 00:52:03
这似乎起作用了..http://jsfiddle.net/jNeH9/2/
$(document).bind('keyup', function(e) {
if(e.which == 50 && e.shiftKey)
{
}
});https://stackoverflow.com/questions/7919352
复制相似问题