Я реализую функцию поиска товара и хочу, чтобы пользователь мог перемещаться по клавишам (вверх / вниз).Но я хочу, чтобы только пользователь мог перемещаться по этому элементу списка с помощью блока отображения.Но всякий раз, когда он / она переходит к следующему элементу li через клавишу «вниз», метод jquery .next () перемещает следующий элемент li с отображением none.
Вот мой код:
var liSelected;
$(window).keydown(function(e){
if(e.which === 40){
var li = $('ul#myUL li:visible');
// console.log(li);
// return false;
if(liSelected){
liSelected.removeClass('selected');
next = liSelected.next();
if(next.length > 0){
liSelected = next.addClass('selected');
}else{
liSelected = $('ul#myUL li:visible').eq(0).addClass('selected');
}
}else{
liSelected = $('ul#myUL li:visible').eq(0).addClass('selected');
}
}else if(e.which === 38){
// li = $('ul#myUL li:visible');
if(liSelected){
liSelected.removeClass('selected');
next = liSelected.prev();
if(next.length > 0){
liSelected = $('ul#myUL li:visible').last().addClass('selected');
}else{
liSelected = $('ul#myUL li:visible').last().addClass('selected');
}
}else{
liSelected = $('ul#myUL li:visible').last().addClass('selected');
}
}
});