2010-12-04 27 views
1

我有這樣一個清單:jQuery的手柄按鍵的列表

<div id="txt"></div> 
<ul><li><a href="#">Tom</a></li><li><a href="#">Tina</a></li><li><a href="#">Berba</a></li><li><a href="#">Tyson</a></li><li><a href="#">Bank</a></li></ul> 

我的目標是:當我按下像「T」和「湯姆」一鍵將出現在#txt,按「T」一次更多時間,蒂娜將在#txt中取代湯姆。

我找不到解決方案! :(

有人能幫幫我嗎?謝謝

+0

actualy什麼ü需要的。那是自動完成或其他一些???請給出一個清晰的想法 – 2010-12-04 10:11:15

+0

東西像自動完成!!! – 2010-12-04 14:25:03

回答

1

聽keydown事件,得到的鍵碼,得到目標名稱設置,循環名稱。
可能喜歡這個

var lastchar, i=-1; 
$(document).bind('keydown',function(e){ 
    var char = String.fromCharCode(e.which), 
     names = $('li a').filter(function(){ 
     return $(this).text().charAt(0)==char; 
     }); 
    if(!names.length){ return; } 

    if(char != lastchar){ i=-1; } 
    $('#txt').text(names.eq(++i % names.length)); 
});