0

单击链接时,我正在使用以下 javascript 将打开的面板向右滑动。

jQuery(函数($){

$('a.panel').click(function() {
    var $target = $($(this).attr('href')),
        $other = $target.siblings('.active'),
        animIn = function () {
            $target.addClass('active').show().css({
                left: -($target.width())
            }).animate({
                left: 0
            }, 500);
        };

    if (!$target.hasClass('active') && $other.length > 0) {
        $other.each(function(index, self) {
            var $this = $(this);
            $this.removeClass('active').animate({
                left: -$this.width()
            }, 500, animIn);
        });
    } else if (!$target.hasClass('active')) {
        animIn();
    }
});

$('.close').click(function(){        
    $(this).closest('.panel').animate({
                left: -200
            }, 500);
});

});

单击关闭按钮时,面板将关闭。

我需要的是,当单击关闭按钮时,会从面板中删除“活动”类。如果可能的话,锚点会被移除。

这是因为如果用户再次单击同一面板链接,它将不会打开。

看到这个jsfiddle

谢谢

4

1 回答 1

2

只需添加.removeClass('active')到您的关闭功能,请参阅http://jsfiddle.net/RZpbK/479/

 $('.close').click(function(){        
    $(this).closest('.panel').animate({
                left: -200
            }, 500).removeClass('active');
});

如我所见,该功能按预期工作,但我不明白您为什么要删除锚?那下次打开就关不上了?

于 2012-10-17T09:23:14.020 回答