Jquery禁用“下一步”按钮,直到动画结束

时间:2010-09-01 14:11:59

标签: jquery jquery-cycle

这很酷,我对此很熟悉。但是我希望下一个和上一个按钮保持可见,只是不能点击。在我的特殊情况下,按钮是图像,是设计的一部分。我只是希望用户在动画结束前无法点击。

5 个答案:

答案 0 :(得分:9)

$(function(){
    $("#previous").bind("click", Previous);
    $("#next").bind("click", Next);
});

function DoAnimation() {
    $("#previous,#next").unbind("click");
    $('#id').animate(
        complete: function() {
            $(this).after('<div>Animation complete.</div>');
            $("#previous").bind("click", Previous);
            $("#next").bind("click", Next);
        }
    });
}

function Previous() { }
function Next() { }

答案 1 :(得分:8)

还有一项技术:

$(".next,.prev").click(function(){
    if ($('#my_animated_elelement').is(':animated'))
    {
        return false;
    }
})

答案 2 :(得分:0)

我猜你有关于onclick的图片的javascript调用,使用变量MyApp.IgnoreNextPrevClicks来标记onclick处理程序是否执行。

MyApp={}
MyApp.IgnoreNextPrevClicks=false;
MyApp.PrevClick=function() {
    if(MyApp.IgnoreNextPrevClicks) return;
    //real work goes here
}

现在在调用jquery animator之前,将MyApp.IgnoreNextPrevClicks设置为true,并在动画结束后将其设置为false(使用jquery动画回调)。

答案 3 :(得分:0)

function btn() {
   $('#btn').one('click', function(){
     //call your animation function here.

     setTimeout(btn, animation duration);
  });
}

答案 4 :(得分:-1)

$('#mybtn').attr("disabled","disabled"); // to Disable Button

$('#mybtn').removeAttr("disabled"); // to Enable Disabled button