Swapping list elements with jQuery
javascript, jquery
Solution
jsFiddle( http://jsfiddle.net/A9j3E/6/ )
$(".upArrow").click(function() {
$(this).parent().insertBefore( $(this).parent().prev() );
});
$(".downArrow").click(function() {
$(this).parent().insertAfter( $(this).parent().next() );
});
Problem
I have a list: ``` <li>item one<img src="/assets/img/site/up_arrow.png" class="upArrow"/><img src="/assets/img/site/down_arrow.png" class="downArrow"/</li> <li>item two<img src="/assets/img/site/up_arrow.png" class="upArrow"/><img src="/assets/img/site/down_arrow.png" class="downArrow"/</li> <li>item three<img src="/assets/img/site/up_arrow.png" class="upArrow"/><img src="/assets/img/site/down_arrow.png" class="downArrow"/</li> <li>item four<img src="/assets/img/site/up_arrow.png" class="upArrow"/><img src="/assets/img/site/down_arrow.png" class="downArrow"/</li> <li>item five<img src="/assets/img/site/up_arrow.png" class="upArrow"/><img src="/assets/img/site/down_arrow.png" class="downArrow"/</li> ``` Each one has an up and down arrow on. In my jquery I have: ``` $(".upArrow").click(function() { }); $(".downArrow").click(function() { }); ``` How can I get it so that when a user clicks up arrow it swaps the li with the one above, and when they click down it swaps with the li below (if one exists).