Перемещение по списку поиска только с помощью клавиш со стрелками (вверх / вниз). Перемещение по списку с помощью блока отображения?(JavaScript / JQ) - PullRequest
0 голосов
/ 20 февраля 2019

Я реализую функцию поиска товара и хочу, чтобы пользователь мог перемещаться по клавишам (вверх / вниз).Но я хочу, чтобы только пользователь мог перемещаться по этому элементу списка с помощью блока отображения.Но всякий раз, когда он / она переходит к следующему элементу 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');
        }
    }
});
...