Javascript 如何仅按选定链接上的enter键继续?

Javascript 如何仅按选定链接上的enter键继续?,javascript,jquery,Javascript,Jquery,现在,您可以使用箭头键在链接列表中导航,它们将通过css高亮显示,但我希望能够按Return键转到高亮显示的选定链接。有什么办法吗 抱歉,如果代码很混乱,非常新 var li=$('li'); 他当选了; $(窗口).keydown(函数(e){ 如果(e.which==40){ 如果(当选){ liSelected.removeClass('selected'); next=liSelected.next(); 如果(next.length>0){ liSelected=next.addCl

现在,您可以使用箭头键在链接列表中导航,它们将通过css高亮显示,但我希望能够按Return键转到高亮显示的选定链接。有什么办法吗

抱歉,如果代码很混乱,非常新

var li=$('li');
他当选了;
$(窗口).keydown(函数(e){
如果(e.which==40){
如果(当选){
liSelected.removeClass('selected');
next=liSelected.next();
如果(next.length>0){
liSelected=next.addClass('selected');
}否则{
liSelected=li.eq(0).addClass('selected');
}
}否则{
liSelected=li.eq(0).addClass('selected');
}
}否则如果(例如,哪个===38){
如果(当选){
liSelected.removeClass('selected');
next=liSelected.prev();
如果(next.length>0){
liSelected=next.addClass('selected');
}否则{
liSelected=li.last().addClass('selected');
}
}否则{
liSelected=li.last().addClass('selected');
}
}
});


要执行此操作,您可以按返回键code 13,然后单击包含
类的
li
中的
元素。但是,您应该注意,这种行为可能会干扰DOM中的任何
表单
元素,如果您需要保持ISO合规性,还会破坏可访问性规则

还请记住,您可以在按向上/向下箭头键时消除控制
li
元素选择的逻辑。试试这个:

var$li=$('li');
$(窗口).keydown(函数(e){
如果(e.which==40 | | e.which==38){
e、 预防默认值();
var goingDown=e,其中=40;
变量$selected=$li.filter('.selected');
$selected.removeClass('selected');
var$target=$selected[goingDown?'next':'prev']();
如果(!$target.length)
$target=$li[goingDown?'first':'last']();
$target.addClass('selected');
}
如果(e.which==13){
变量$selected=$li.filter('.selected');
如果($selected.length)
$selected.find('a')[0]。单击();
}
});
//仅用于调试:
$('a')。单击(函数(e){
e、 预防默认值();
log(`您单击了${$(this.text()}!`);
});
。选中,
.选择a{
颜色:#C00;
}


但由于某些原因,它不会打开href链接,它只显示我选择的li之一。知道怎么解决吗?谢谢你的帮助!