【问题标题】:jQuery Complete EventjQuery 完成事件
【发布时间】:2014-12-01 21:34:00
【问题描述】:

我有一个使用 .animate 更改背景颜色的 jQuery 脚本。我使用完成事件来提醒(“你好”),这样一旦动画完成它就会发出警报。但它似乎在处理完动画后立即发出警报。不是因为它实际上已经完成了。反正动画一结束就运行函数吗?

【问题讨论】:

  • 是的,有办法。使用回调函数。它已经在文档中:api.jquery.com/animate
  • 我确实使用了回调函数,但它一启动就会发出警报。而不是在动画本身完成时,我想要类似于在它实际完成时调用的东西。
  • 显示您的代码。您似乎错误地使用了回调。如果您不发布任何代码,则无法提供帮助。

标签: javascript jquery css


【解决方案1】:

像这样使用完整的(回调)函数:

$(function(){
   $( "#test" ).animate({
      opacity: 0.25,
    }, 1500, function() {
      alert('hello'); // callback
    });
});

Fiddle

我不明白为什么它不起作用(或者为什么它会立即触发),除非您的动画持续时间很短?编辑您的问题并添加一些代码

来自docs

If supplied, the complete callback function is fired once the animation is complete.

【讨论】:

    【解决方案2】:

    试试这个。 DEMO at JSBin

       alert('start animation');
    $('.demoDiv').animate({
         width: '90%',
       },
       { duration: 5000,
         complete: function(){
            alert('end animation');
        }
    });
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-04-14
      • 2011-12-05
      • 2014-11-19
      • 2012-06-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多