2015-05-21 40 views
0

我試圖附加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]); 
} 

很抱歉,如果我的代碼看起來很亂,我已經嘗試了一堆東西,還沒有清理它。

link to fiddle

回答

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循環是不必要的,所以我把他們趕走。如果你想把它們放回去,你需要添加邏輯來將「主動」類添加到任何焦點的項目中。

+0

實際上,它們是網站上其他東西所必需的,它在小提琴中不可見。但現在只能改變一個字母,也許你錯過了我想達到的目標?無論如何謝謝你的答案。 – jdo