jQuery - 如果element有类这样做

时间:2010-12-30 18:10:47

标签: javascript jquery

我需要一个jQuery脚本,它将查看是否有任何元素具有特定的类并执行更改位置等操作。

这就是方法,但我认为这不会奏效。

$("a.contact").toggle(function() {
    $("#contact").animate({
        right: '0'
    }, 2000);

    if ($("#about").hasClass("opened")) {
        $("#about").animate({
            right: -700 + "px"
        }, 2000);
    }
}, function() {
    $("#contact").animate({
        right: -700 + "px"
    }, 2000);
});

1 个答案:

答案 0 :(得分:162)

首先,你在条件中遗漏了一些括号:

if ($("#about").hasClass("opened")) {
  $("#about").animate({right: "-700px"}, 2000);
}

但您也可以将其简化为:

$('#about.opened').animate(...);

如果#about没有opened类,则不会设置动画。

如果问题出在动画本身上,我们需要了解更多关于元素定位的信息(绝对?绝对内部相对父级?父级是否有布局?)