2017-02-22 5 views
0
li verändern

ich die Position des li in jquery ändern möchten Ich habe 3 Listeneintragdie Position des

<li class="flex-active-slider"> 
<div class="node_id"><span>233</span></div> 
<ul> 
    <li class="69"><img></li> 
    <li class="233"><img></li> 
    <li class="299"><img></li> 
</ul> 
</li> 
<a href="#" class="flex-next">click<a> 

onload zweite Listenelement in der Mitte ist, wie ich erwartet hatte. onload [1,2,3], bei Klick möchte ich die Position der Liste als [3,1,2] ändern und als nächstes [2,3,1] anklicken. Ich möchte die Liste wie oben in Klick ändern

Funktion
$('.flex-next').click(function(){ 
    //want to change in jquery 
}); 

Antwort

1

Zuerst müssen Sie in der Lage sein, den ul Tag auszuwählen.

Dies ist die Hauptidee. Sie können es anpassen.

$('.flex-next').click(function(){ 
 
    ul = $('#myUi'); 
 
    lis = $(ul).find('li'); 
 
    $(ul).html(''); 
 
    len = lis.length; 
 
    $(ul).append(lis[--len]); 
 
    for (i = 0; i< len; i++) { 
 
    \t $(ul).append(lis[i]); 
 
    } 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script> 
 
<ul id="myUi"> 
 
    <li class="69">1</li> 
 
    <li class="233">2</li> 
 
    <li class="299">3</li> 
 
</ul> 
 
</li> 
 
<a href="#" class="flex-next">click<a>

+0

Ich habe mit fünf Listenelement versucht, und nur drei mittleren seine nicht funktioniert in diesem case.but feinen 3 Artikel – user3386779

+0

tauschen müssen http://stackoverflow.com/questions/42382202/change- die-Position-von-der-Mitte-3-li-Artikel.Ich habe eine weitere Frage – user3386779

+0

@ user3386779, der Link nicht funktioniert – Mojtaba

1

Sie auf Elemente verwenden, lösen können und dann append verwenden. wie folgt aus:

var parent = $("div.node_id ul"); 
var elem1 = $("li.69"); 
var elem2 = $("li.233"); 
var elem3 = $("li.299"); 

$('.flex-next').click(function(){ 
    elem1.detach(); 
    elem2.detach(); 
    elem3.detach(); 

    parent.append(elem3); 
    parent.append(elem1); 
    parent.append(elem2); 
});