2012-10-30 251 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());