0

我有下表:

<table>
<tr class="change"><td>Click to change</td></tr>

<tbody id="p1" class="now">
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
</tbody>
<tbody id="p2" class="next">
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
</tbody>
<tbody id="p3" class="previous">
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
<tr>...</tr>
</tbody>
</table>

当我单击更改行时,我想隐藏具有“现在”类的 tbody 并显示具有“下一个”类的实体。

我的 Jquery(只计算现在和下一次):

$(document).ready(function(){

$('.change').click(function(){

    $('.now').hide('slow', function(){
        $('.next').show('slow', function(){     


        $('#p1').removeClass('recent');
        $('#p2').removeClass('next');

        $('#p1').addClass('next');
        $('#p2').addClass('recent'); 

        });
    });

});  

});

我知道我做错了,所以我想问你,如何以某种方式很好地同步它,当我点击“更改”时,我的“现在”变为“上一个”,“下一个”变为“现在”而“上一个”变成下一个?

4

3 回答 3

3

尝试

$(document).ready(function () {
    $('.change').click(function () {
        $('.now').hide('slow', function () {
            $('.next').show('slow', function () {
                $prev = $('.previous');
                $now = $('.now');
                $next = $('.next');
                $prev.removeClass('previous').addClass('next');             
                $now.removeClass('now').addClass('previous');
                $next.removeClass('next').addClass('now');

            });
        });
    });
});
于 2012-06-15T09:44:17.997 回答
1
$('.change').click(function(){
    var now = $('.now');
    var next = $('.next');
    var previous = $('.previous');
    now.hide('slow', function(){
        next.show('slow');
        previous.removeClass('previous').addClass('next');             
        now.removeClass('now').addClass('previous');
        next.removeClass('next').addClass('now');
    });
});​

演示

于 2012-06-15T09:52:31.543 回答
-1
$('.change').click(function() {
    $('.now').attr('class', 'previous');
    $('.next').attr('class', 'now');
    $('.previous').attr('class', 'next');
});
于 2012-06-15T09:45:54.337 回答