1
jquery :animated
선택기에서 문제가 발생했습니다. jquery animate
함수의 콜백 함수를 사용하여 애니메이션이 끝난 후 ajax 페이지를 호출하지만 문제가 있습니다. : 아약스를 통한 호출 페이지는 두 번 호출됩니다!.is (": animated") selector는 애니메이션 중에 true를 반환하고 두 번 호출합니다
$('#elemId').click(function(){
$('html,body').animate({scrollTop: $('#sections_display').offset().top-100}, 500, function(){
$('#sections_display').load('page.php');
});
});
결과 "page.php가 두 번로드됩니다!"라는 오류 메시지가 표시됩니다.
그래서 나는 시도 :$('#elemId').click(function(){
$('html,body').animate({scrollTop: $('#sections_display').offset().top-100}, 500);
});
if ($('html,body').is(":animated")) {
$('#sections_display').load('page.php');
}
문제 if ($('html,body').is(":animated"))
은 항상 페이지의 애니메이션 동안 true
를 반환하지만 난 애니메이션이 끝난 후 true를 반환 할 수 있습니다.
$('#elemId').click(function(){
$('html,body').animate({scrollTop: $('#sections_display').offset().top-100}, 500, function(){
if ($(this).is(":animated")) {
$('#sections_display').load('page.php');
}
});
});
결과 "page.php 두번 번 로딩된다."
그것은 : 일, 당신이 기꺼이 도와 아무 문제가 – semsem
없습니다 감사드립니다. –