2010-05-21 70 views
0

我创建了一个div,当它被点击时它会执行一个jQuery脚本,但是我遇到的问题是在动画中有一个链接,当你点击链接时链接是执行以及动画,但不会让动画结束。有没有办法让知道Jquery,当它执行的链接等待动画结束,然后去链接?链接不让动画结束JQUERY

+0

是的,如果你使用['jQuery.animate'](http://api.jquery.com/animate/)或类似的方法,你应该可以使用结束动画回调来做到这一点。基本上,你会使用链接上的jQuery.click处理程序。在处理程序中,设置一个标志(clickedFooLink = true)。然后,从处理程序返回false(因此不会采取立即导航的默认操作)。最后,在最后的动画回调中,如果clickedFooLink为true,则可以导航。发布您的源代码以获取更多帮助。 – 2010-05-21 04:09:42

回答

0

您需要处理链接的click事件并记录点击,然后return false以防止导航。

然后,当动画完成时,检查您是否记录了点击,如果是,则设置为location.href

但是,我不建议这样做。如果一个用户点击了一个链接,他显然想要去那个页面,他对你的动画不感兴趣。

0

您可以使用回调参数有关的动画功能:

$('a').click(function(){ 
    $(this).animate({}, 500, function() { location.href = $(this).attr('href') }); 
    return false; 
}); 

链接被点击时,这将执行动画将转至该网址,一旦完成动画。