<div class="test one">aaa</div> <div class="test two">bbb</div> <div class="test three">ccc</div>
Est-il possible de modifier cette divs avec jQuery? Je souhaite recevoir:
<div class="test two">bbb</div> <div class="test three">ccc</div> <div class="test one">aaa</div>
Je ne peux utiliser que jQuery
LIVE: http://jsfiddle.net/cmVyM/
Je ferai cela seulement – si le document est prêt.
On dirait que vous voulez déplacer la première division après la dernière.
$.fn.insertAfter
insérer les éléments correspondants après le paramètre:
$(".test.one").insertAfter(".test.three");
Edit: Si vous voulez une solution plus générale d'ajouter le premier au dernier, sans recourir aux classes explicites:
var tests = $('.test'); tests.first().insertAfter(tests.last());
Juste faire $('.one').insertAfter('.three');
$("#botao").click(function(){ $("#a3").insertBefore("#a1"); }); <div id="a1">a1</div> <div id="a2">a2</div> <div id="a3">a3</div> <div> <a id="botao">altera</a> </div>
Il suffit d'utiliser InsertAfter comme la réponse précédente a dit
var eerste = $('.one'); var tweede = $('.two'); var derde = $('.three'); tweede.insertAfter(derde); eerste.insertAfter(tweede);
Vous pouvez le faire par cette
var obj = $('.test.two'); obj.after(obj.prev());
Donc, div un et div deux changeront leur position.
J'espère que cela peut vous aider.
Voici un exemple simple avec les boutons de navigation.
HTML
<ul> <li>1 <a class='up' href='#'>up</a> <a class='down' href='#'>down</a></li> <li>2 <a class='up' href='#'>up</a> <a class='down' href='#'>down</a></li> <li>3 <a class='up' href='#'>up</a> <a class='down' href='#'>down</a></li> <li>4 <a class='up' href='#'>up</a> <a class='down' href='#'>down</a></li> <li>5 <a class='up' href='#'>up</a> <a class='down' href='#'>down</a></li> <li>6 <a class='up' href='#'>up</a> <a class='down' href='#'>down</a></li> </ul>
Javascript avec JQuery
$('.up').on('click', function(e) { var wrapper = $(this).closest('li') wrapper.insertBefore(wrapper.prev()) }) $('.down').on('click', function(e) { var wrapper = $(this).closest('li') wrapper.insertAfter(wrapper.next()) })
Essayez-le ici: https://jsfiddle.net/nguyenvuloc/vd105gst