Sam Collett schrieb:
> Say I have a list:
> 
> <ul id="mylist">
>     <li>Item 1</li>
>     <li>Item 2</li>
>     <li>Item 3</li>
>     <li>Item 4</li>
>     <li>Item 5</li>
> </ul>
> 
> I attach a click event to each (actually I would append an anchor and
> attach to that, but for simplicities sake). How would I then get all
> nodes prior to it (i.e. if I click Item 3, Item 1 + 2 move after Item
> 5)?
> 
> $("#mylist li").click(
>     function()
>     {
>         var current = $(this);
>         var previous = current.???;
>         previous.appendTo("#mylist");
>     }
> )
> 
> What would be ideal is if prev and next had an overload to get all
> previous/next, not just the immediate one. Or click had two parameters
> click(event, index)
> 
> I'm thinking jQuery Tabs, but with the selected tab always as the
> first one (with an animation fading out (or sliding left) the previous
> tabs and fading them in at the end of the list).


Hi Sam,

you could try to use index() for this:

$('#mylist li').click(function() {
     var all = $('li', this.parentNode);
     var currentIndex = all.index(this);
     var previousSiblings = all.lt(currentIndex);
});

Not tested though...


-- Klaus


_______________________________________________
jQuery mailing list
[email protected]
http://jquery.com/discuss/

Reply via email to