Jquery切换/动画的问题

时间:2011-07-12 13:53:23

标签: jquery html5 css3

我的网站:http://www.daysofthedead.net

我在屏幕右侧制作了2个滑动面板。一个用于Facebook,另一个用于Twitter。您单击Facebook选项卡并打开,然后如果您在Facebook面板仍处于打开状态时单击Twitter选项卡,则Facebook将关闭,Twitter将打开,反之亦然。

我的问题: 您单击一次打开Facebook然后打开Twitter。之后,除非在打开第二个面板之前关闭面板,否则必须单击每个选项卡两次。

有人可以看看我下面的代码并帮我弄清楚它为什么会这样做吗?

在这里查看代码:http://jsfiddle.net/Draven/4BQAs/

1 个答案:

答案 0 :(得分:1)

我认为切换是在创建一些问题,在这种情况下你可以使用点击:

$('.panel-tab').click(function(event) {
    var that = this;
    if ($('.active').length > 0) {
        $('.active').animate({
            marginRight: '0'
        }, 1000,'linear', function() {
            var targetClosed = $(this).find('a').data('target');
            var targetOpen = $(that).data('target');
            if (targetClosed != targetOpen){
            $('#panel-' + targetOpen).animate({
                marginRight: '292'
            }, 1000).addClass('active');
        }
        }).removeClass('active');
    } else {
        $('#panel-' + $(this).data('target')).animate({
            marginRight: '292'
        }, 1000).addClass('active');
    }
});

fidlle:http://jsfiddle.net/4BQAs/8/