提交时,做动画并等待完成,然后提交

On submit, do animation and wait to complete, then submit

$('form').submit(function(e) {

    e.preventDefault();

    $('.thing').fadeOut('slow', function() {

        $('form').submit();

    });

});

你看到这里的困境了吗?我试图在提交表单时淡出 div,然后等待动画完成,然后实际提交表单。

但是一旦我阻止了默认行为,为 div 设置动画,然后尝试提交表单,脚本循环返回,点击 preventDefault() 并避免再次提交。

我会为初始事件使用 onClick,但我也想按回车键来工作。这可能吗?谢谢!

您可以在触发提交绑定后删除它。

$('form').submit(function(e) {
    e.preventDefault();
    $('form').off();
    $('.thing').fadeOut('slow', function() {
        $('form').submit();
    });
});

您可以使用:

$('form').bind('submit' , function(e) {
 e.preventDefault();
  $('.thing').fadeOut('slow', function() {
   $('form').unbind();
  });
});

先绑定再解绑