我在 jquery:animated
选择器中遇到问题,我使用 jqueryanimate
函数中的回调函数在动画完成后调用 ajax 页面,但问题是:通过 ajax 调用页面被调用两次!
$('#elemId').click(function(){
$('html,body').animate({scrollTop: $('#sections_display').offset().top-100}, 500, function(){
$('#sections_display').load('page.php');
});
});
结果“page.php 被加载了两次!在 firebug 中”。
所以我尝试了:
$('#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 被加载了两次”。