简体   繁体   English

如何全部转移 <li> 里面 <ul> 除了特定 <li> 左键单击和右键单击左右一个位置

[英]How to shift all <li> inside a <ul> except a particular <li> one position left and right on left button click and right button click

Here is my html , now I want to shift all 这是我的html,现在我要转移所有

<li> 

inside a 里面

<ul> 

except a particular 除了特定

<li class="active-slide"> 

one position left and right while left button click and right button click. 左键单击和右键单击同时向左和向右一个位置。

<ul class="clearfix" id="slider_donor">

<li id="slider_1">  
<p class="amount green" id="amount_1">$233,000</p><!-- /.amount -->
<h5 id="donor_1">reeeee</h5>
</li>

<li id="slider_2">
<p class="amount green" id="amount_2">$503,000</p><!-- /.amount -->
<h5 id="donor_2">monster</h5>
</li>

<li id="slider_3">
<p class="amount green" id="amount_3">$1,003,000</p><!-- /.amount -->
<h5 id="donor_3">google</h5>
</li>

<li class="active-slide">
<div class="active-slide-inner">
<h3 id="blackbox">ABC</h3>
<p class="contributed">contributed</p><!-- /.contributed -->
</div><!-- /.active-slide-inner -->
   <a href="javascript:void(0)" class="slider-dir slider-prev" onclick="prev()">prev</a>
   <a href="javascript:void(0)" class="slider-dir slider-next" onclick="next()">next</a>

</li>

<li id="slider_4">
<p class="amount green" id="amount_4">yahoo</p>
<h5 id="donor_4">All Donors Supporting</h5>
</li>

<li id="slider_5">                      
    <p class="amount green" id="amount_5">$12</p><!-- /.amount -->
<h5 id="donor_5">diff </h5>
</li>

    <li id="slider_6">
<p class="amount green" id="amount_6">$4,003,009</p><!-- /.amount -->
<h5 id="donor_6">rediff</h5>
</li>

</ul>

i tried this js code : 我试过这个js代码:

function prev(){
$('#slider_donor > li:first').appendTo('#slider_donor');

}

But shift only one way , I cant shift both the ways. 但是只改变一种方式,我不能同时改变两种方式。 And cant stop shifting this particular 并且不能停止转移这个特殊的

<li class="active-slide"> 

I want all <li> should should shift one place left or right . 我希望所有<li>应该向左或向右移动一个位置。 But this <li lass="active-slide"> should hold its position , it should be fixed. 但是这个<li lass="active-slide">应该保持其位置,应该是固定的。

So after first left click the order should be like : 因此,在第一次左键单击后,顺序应为:

<ul class="clearfix" id="slider_donor">

<li id="slider_6">  
<p class="amount green" id="amount_6">$233,000</p><!-- /.amount -->
<h5 id="donor_6">reeeee</h5>
</li>

<li id="slider_1">
<p class="amount green" id="amount_1">$503,000</p><!-- /.amount -->
<h5 id="donor_1">monster</h5>
</li>

<li id="slider_2">
<p class="amount green" id="amount_2">$1,003,000</p><!-- /.amount -->
<h5 id="donor_2">google</h5>
</li>

<li class="active-slide">
<div class="active-slide-inner">
<h3 id="blackbox">ABC</h3>
<p class="contributed">contributed</p><!-- /.contributed -->
</div><!-- /.active-slide-inner -->
   <a href="javascript:void(0)" class="slider-dir slider-prev" onclick="prev()">prev</a>
   <a href="javascript:void(0)" class="slider-dir slider-next" onclick="next()">next</a>

</li>

<li id="slider_3">
<p class="amount green" id="amount_3">yahoo</p>
<h5 id="donor_3">All Donors Supporting</h5>
</li>

<li id="slider_4">                      
    <p class="amount green" id="amount_4">$12</p><!-- /.amount -->
<h5 id="donor_4">diff </h5>
</li>

    <li id="slider_5">
<p class="amount green" id="amount_5">$4,003,009</p><!-- /.amount -->
<h5 id="donor_5">rediff</h5>
</li>

</ul>

Thanks in advance. 提前致谢。

if i understand good,Try this : 如果我理解不错,请尝试以下方法:

$('#slider_donor li').each(function(index, element) {
    var $li=$(element);
    if(! $li.hasClass('active-slide'))
       $li.appendTo('#slider_donor');
});

Try to set class='inactive-slide' all li except of which has class='active-slide' . 尝试将所有class设置为class ='inactive-slide',除非其中有class ='active-slide' And function like below: 和功能如下:

function prev(){
$('.inactive-slide').appendTo('#slider_donor');

}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM