【发布时间】:2016-10-05 06:39:55
【问题描述】:
我有一个触发第一次点击和第二次点击的按钮点击。所以当点击多次动画就崩溃了。
有没有办法在动画期间禁用点击并仅在动画完成时启用?
请参阅下面我的代码,其中 prop 已禁用,但无法正常工作
jQuery('.start_button').click(function(event){
jQuery(this).find('button').prop('disabled', true);
if(clickcount === 0){
jQuery(this).find('button').prop('disabled', true);
wheelForuneAnim.startAnimation();
jQuery(this).find('button').prop('disabled', false);
clickcount = 1;
}
else if(clickcount === 1){
jQuery(this).find('button').prop('disabled', true);
wheelForuneAnim.stopFull();
setTimeout(function(){
wheelForuneAnim.stopAnimation();
}, 700);
clickcount = 0;
};
});
这是标记
<div class="start_button">
<button type="button"></button>
</div>
方法
startAnimation = function () {
interval = setInterval(this.animation, 250);
};
animation = function () {
if((wheelelement % elems.length)==0){ wheelelement = 0 ;}
elems.removeClass('active_wheel');
jQuery('.game_wheel_item:eq('+wheelelement+')').addClass('active_wheel');
wheelelement++;
};
任何想法如何解决这个问题?
【问题讨论】:
-
JQuery(this) 是一个 div,里面有一个
-
所以
.start_button是一个名字很糟糕的div元素,它包含一个按钮?在这里查看您的实际 HTML 会有所帮助。 -
查看更新的问题@RoryMcCrossan
-
@Satpal setTimeout 方法本身有回调,我认为这足以解决问题
-
那么我该如何正确解决这个问题? @Satpal
标签: javascript jquery click