2012-10-30 293 views
0

我有一個下拉菜單,顯示不同的城市。下面是下拉代碼:從鏈接列表中,點擊鏈接,點擊鏈接,第一個鏈接

<ul class="nav-poplist"> 
<li class="nav_divider_before"><a onclick="set_city(1);" href="javascript:">Bangalore</a></li>      
<li><a onclick="set_city(3);" href="javascript:">Hyderabad</a></li>    
</ul> 

因此,目前的順序是這樣的:
班加羅爾
海德拉巴
所以,我想要做的是,當用戶點擊海得拉巴,海德拉巴應該位居榜首,而班加羅爾(以及未來可能在那裏的其他城市)應該倒下,例如。在海得拉巴假設用戶點擊,則順序應該是,
海德拉巴
班加羅爾
即,當單擊應該成爲第一要素的鏈接,剩下的應該往下走。 任何想法?

+0

我其實挺新的jquery&JavaScript,所以我對此沒有太多線索。 –

+0

一次我可以向你保證的是,這種行爲會給用戶造成很大的困惑。想象一下:你在頁面上有一個列表 - 這個列表每當你點擊一個項目時都會改變。 –

+0

是的,非常感謝小費。 我已修改此行爲。現在,有一個默認的文本班加羅爾,當你把它懸停在上面,你看到一個下拉班加羅爾和海得拉巴,所以當你點擊海得拉巴,文本將更改爲海德拉巴:) –

回答

1

您可以使用prepend方法:

$('.nav-poplist li').click(function(){ 
    $('.nav-poplist').prepend(this) 
}) 

http://jsfiddle.net/SQQY7/

+0

不知道'.prepend()現有的元素只是移動它。謝謝! – Blender

+0

我這麼認爲。你爲什麼要問? – Blender

+1

非常感謝,這種方法對我非常有效。 –

1

您應該能夠通過添加以下行到您的set_city()功能來做到這一點:

$(this).parent().prependTo($(this).parent().parent());