[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);
});



답변

첫째, 조건문에 괄호가 누락되었습니다.

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

그러나이를 단순화하여 다음을 수행 할 수도 있습니다.

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

경우 #about가없는 opened클래스를, 그것은 애니메이션되지 않습니다.

애니메이션 자체에 문제가있는 경우 요소 위치에 대해 더 많이 알아야합니다 (절대? 상대 부모 내부에 절대? 부모에 레이아웃이 있습니까?).


답변