페이지에서 일부 요소를 이동하려고하는데 애니메이션이 발생하는 동안 애니메이션이 끝나면 "overflow : hidden"을 elemnt에 적용하고 "overflow"를 "auto"로 되돌리고 싶습니다. . 내가 jQuery를 알고jQuery에서 요소가 애니메이션으로 작동하는지 어떻게 알 수 있습니까?
몇 가지 요소가 애니메이션되고 있는지 여부를 결정하는 유틸리티 기능을 가지고 있지만 나는
페이지에서 일부 요소를 이동하려고하는데 애니메이션이 발생하는 동안 애니메이션이 끝나면 "overflow : hidden"을 elemnt에 적용하고 "overflow"를 "auto"로 되돌리고 싶습니다. . 내가 jQuery를 알고jQuery에서 요소가 애니메이션으로 작동하는지 어떻게 알 수 있습니까?
몇 가지 요소가 애니메이션되고 있는지 여부를 결정하는 유틸리티 기능을 가지고 있지만 나는
if($(elem).is(':animated')) {...}
더 많은 정보 워드 프로세서 어디서나 찾을 수 없습니다 http://docs.jquery.com/Selectors/animated
또는 :
$(elem)
.css('overflow' ,'hidden')
.animate({/*options*/}, function(){
// Callback function
$(this).css('overflow', 'auto');
};
예, 감사했습니다. 내가 어떻게 그것을 놓칠 수 있니? 빌어 먹을, 늙어 간다 –
참고로 콜백에서 "overflow : auto"를 프로그래밍하여 CSS 스타일을 덮어 쓰지 않으려면'.css ('overflow', '')'를 사용하십시오. 빈 문자열을 전달하면 일반적으로 해당 속성이 요소의 스타일에서 모두 제거됩니다. 문서화 된 동작인지 확실하지는 않지만 매우 유용한 트릭입니다. –
CSS 애니메이션을 지원하지 않는다고 생각합니다. – Gqqnbig
"!"
if (!$(element).is(':animated')) {...}
당신이 css
애니메이션을 사용하여 특정 class name
를 사용하여 애니메이션을 할당하는 경우는, 다음과 같이 그것을 확인할 수 있습니다 뭔가 애니메이션되지 않은 경우, 당신은 간단하게 추가 할 수있는, 테스트
if($("#elem").hasClass("your_animation_class_name")) {}
하지만 애니메이션이 끝나면 애니메이션을 처리하는 클래스 이름을 제거했는지 확인하십시오! 당신이 애니메이션 요소에 CSS를 적용 할 경우
$("#elem").on('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend',
function(){
$(this).removeClass("your_animation_class_name");
});
OP가 jQuery 애니메이션을 사용 중입니다. –
그냥 대안을 제안합니다. 그리고 당신은 애니메이션을 의미 했습니까? – KeepMove
예, 저는 애니메이션을 의미했습니다. IMO 귀하의 답변은 완전히 오프 주제입니다. –
, 당신은 :animated
의사 선택기를 사용하여 다음과 같이 그것을 할 수 있습니다,
이 코드는 class name
을 제거하는 데 사용할 수 있습니다
$("selector").css('overflow','hidden');
$("selector:animated").css('overflow','auto');
소스 : https://learn.jquery.com/using-jquery-core/selecting-elements/
$('selector').click(function() {
if ($(':animated').length) {
return false;
}
$("html, body").scrollTop(0);
});
이 코드는 질문에 대답 할 수 있지만 문제를 해결하는 방법 및/또는 이유를 설명하는 추가 컨텍스트를 제공하면 대답의 장기적인 가치가 향상됩니다. 품질에 대한 답변을 얻으려면이 [how-to-answer] (http://stackoverflow.com/help/how-to-answer)를 읽으십시오. – thewaywewere
이 작업에 콜백을 사용합니다. – Mork0075