我尝试追加li
项,然后从数组中修改它。
如果ul少于七个字符,我想在ul中添加一个新项目,然后根据数组更改添加的项目。
我可以添加新项目并将活动类添加到其中,但我无法更改添加的内容。
这是追加新项目的代码:
if ($('ul li').length < 7 && $('li').hasClass('active')) {
$('.content ul').append(newElement);
newElement.addClass('active').focus();
}
这是更改数组中字母的代码(适用于其他项目):
if ($('li').hasClass('active')) {
letterIndex = letterIndex - 1; // if li has class active jump to prev letter in array
$(this).html(letters[letterIndex]);
}
很抱歉,如果我的代码看起来很乱,我已经尝试了很多东西,但还没有清理过它。
答案 0 :(得分:0)
以下是更新的fiddle。
Keyup现在看起来像这样:
case key.up:
letterIndex = letterIndex + 1; // if li has class active jump to next letter in array
$(this).text(letters[letterIndex]);
$('.content').addClass('backBG'); // else add class backBG to .content and remove focus from li
$('li').blur(); // remove focus
break;
我认为你的if / else循环是不必要的,所以我删除了它们。如果要将它们重新放入,则需要添加逻辑以将“活动”类添加到具有焦点的项目中。