jQuery animate()隐藏了除一个元素之外的所有元素

时间:2013-08-12 13:19:43

标签: javascript jquery jquery-animate

$(".fader").click(function (e) { 


    $('.fader').not('#' + $(this).attr("id")).fadeOut(function() {

        $($(this).attr("id")).animate({width: "200",height: "200px", top: "-=-440px", left: "-=-367px"});

    });
});

淡出作品,animate()也有效,但有不同的元素。 是责备的语法还是阻止animate()的CSS?

1 个答案:

答案 0 :(得分:1)

您无需执行$($(this).attr("id")),因为$(this)没问题。

此外,内部jQuery选择器将“this”的含义更改为不同。如果您希望它保持不变,则需要首先保留对它的引用,例如

$(".fader").click(function (e) { 

    var self = this;
    $('.fader').not(self).fadeOut(function() {

        $(self).animate({width: "200",height: "200px", top: "-=440px", left: "-=367px"});

    });
});