在继续进入另一页之前等待DIV停止移动

时间:2011-05-05 09:43:47

标签: c# javascript jquery html razor

我的页面上有一个jQuery函数,当用户点击链接时,它会动画div(将其滑动)。但我希望浏览器只在DIV完成滑动后才能转到链接页面。我们可以这样做吗?

有没有人有任何参考/文章/教程?

谢谢

3 个答案:

答案 0 :(得分:3)

你应该在slideUp方法的回调中有一个javascript重定向。

示例:

$('#divId').click(function() {
  $(this).slideUp('slow', function() {
    window.location = 'urlhere'; //relative url
  });
});

或者,如果网址位于网站之外,则将window.location替换为:

 window.location = 'http://domainhere.com/urlhere'; //absolute url

答案 1 :(得分:1)

取决于你如何完成滑动,我个人会创建一个函数:

如果你按照jQuery文档

$('#clickme').click(function() {
  $('#book').animate({
    opacity: 0.25,
    left: '+=50',
    height: 'toggle'
  }, 5000, function() {
    // Animation complete.
    window.location = 'http://example.com'
  });
});

如果您提供代码或更多细节,可以更具体

答案 2 :(得分:1)

通常会在动画或效果完成时调用回调函数。请参阅this page - 并单击查看源代码