Немного поздно, но я получил ответ:)
вам нужно поймать событие keyup в вашем документе для этого (по крайней мере, мое решение)
вам нужно проверить несколько
1) что текущий фокусированный элемент является частью вашего списка
2) что ключ это keyDown или KeyUp
, поэтому он будет выглядеть примерно так
var focusedIndex = -1;
$(document).on("keyup", function (e) {
var element = $(document.activeElement);
if (element.attr("localName") == "li") {//notice to give a better identifier
var menu = element.closest(".quickSearch");
if (e.key != undefined && e.key == "ArrowDown") {
focusedIndex++;
} else if (e.key != undefined && e.key == "ArrowUp") {
focusedIndex--;
}
if (focusedIndex>=0) {
menu.find("a")[focusedIndex].focus();
} else {
menu.siblings(".searchfield").focus();
}
} else{
focusedIndex = -1;
}
});
обратите внимание, что 'varfoInIndex = -1;'
также необходимо сбросить при первом поиске, чтобы у вас была позиция массива
, надеюсь, я помог