我有一个文本输入框,当用户按下Shift键(keydown)时,它会变成透明,并绑定一个监听器以检测Shift键是否被释放。
即:
$('#foo').keydown(function(){
if(event.which==16){
//make #foo transparent
$(this).keyup(function(){
if(event.which==16){
//return #foo to its former glory
$(this).unbind('keyup');
}
});
};
})
当在按下和释放 shift 按键之间没有按任何字符时,它可以正常工作。问题是,当按下 shift 键并按下另一个字符时,好像完全忘记了 shift 键。当释放 shift 键时,没有 keyup 触发。
我尝试使用 .which 属性设置为 16 来触发“虚假” keydown,以在按其他字符后将其推向正确方向,但是没有用。
如有建议,将不胜感激!