我正在编写一个脚本,用于使用箭头键移动li元素:
$('#tw_nav').focus(function(){
$(document).keypress(function(e) {
switch(e.keyCode) {
// User pressed "up" arrow
case 38:
break;
// User pressed "down" arrow
case 40:
break;
// User pressed "enter"
case 13:
break;
}
});
});
所以,当我用firefox测试这个代码时,没关系,我可以得到38(上),40(下)和13(输入)的情况。但是使用safari,chrome或ie,这段代码不起作用....任何想法?
答案 0 :(得分:1)
您可以将keydown()事件与event.which属性一起使用:
$('#tw_nav').keydown(function(e) {
switch(e.which) {
// User pressed "up" arrow
case 38:
alert('Up arrow pressed');
break;
// User pressed "down" arrow
case 40:
alert('Down arrow pressed');
break;
// User pressed "enter"
case 13:
alert('Enter pressed');
break;
}
});
<强> Fiddle Demo 强>
答案 1 :(得分:0)
试试这个,
$('#tw_nav').keypress(function(e) {
答案 2 :(得分:0)
当你使用jQuery时。使用e.which
$('#tw_nav').keydown(function(e) {
switch(e.which) {
// User pressed "up" arrow
case 38:
break;
// User pressed "down" arrow
case 40:
break;
// User pressed "enter"
case 13:
break;
}
});