Javascript 如何在动画速度期间禁用按钮? var slideContainer=(“#slider”); var宽度=720; 函数幻灯片(){ if(parseInt($slideContainer.css('marginLeft'))>=-2160){ $slideContainer.animate({'margin-left':'-='+width},200); } }
我只想在动画持续时间(动画速度=200毫秒)内禁用按钮。在动画之前禁用,然后使用Javascript 如何在动画速度期间禁用按钮? var slideContainer=(“#slider”); var宽度=720; 函数幻灯片(){ if(parseInt($slideContainer.css('marginLeft'))>=-2160){ $slideContainer.animate({'margin-left':'-='+width},200); } },javascript,jquery,jquery-animate,buttonclick,Javascript,Jquery,Jquery Animate,Buttonclick,我只想在动画持续时间(动画速度=200毫秒)内禁用按钮。在动画之前禁用,然后使用animate()完成回调再次启用 var slideContainer = ('#slider'); var width = 720; function slide () { if ( parseInt( $slideContainer.css('marginLeft') ) >= -2160 ) { $slideContainer.animate({'margin-lef
animate()
完成回调再次启用
var slideContainer = ('#slider');
var width = 720;
function slide () {
if ( parseInt( $slideContainer.css('marginLeft') ) >= -2160 ) {
$slideContainer.animate({'margin-left': '-='+width},200);
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js">
</script>
<a class='button' onclick='slide()'></a>
我的解决方案包括添加class
disabled
,以更改css规则,并使用JavaScriptpreventDefault()
方法防止默认行为。此外,在动画结束时将调用一个传统的参数回调
函数。在这种情况下,回调函数将删除禁用的
类
var slideContainer=$(“#slider”);
var宽度=720;
功能幻灯片(活动){
如果(!slideContainer.hasClass('disabled')){
slideContainer.addClass('disabled');
动画({'margin-left':'-='+width},200,函数(){
slideContainer.removeClass(“已禁用”);
});
}
否则{
event.preventDefault();
}
}
。已禁用{
颜色:红色;
}
测试
另一个解决方案是setAttribute('disabled','disabled')代码>和删除属性(“禁用”)
如果DOM元素是一个按钮,那么这个按钮需要被禁用Das@k1dev说,只有按钮元素可以用原生HTML禁用。如果您想继续使用标记而不是事件,那么preventDefault()将为您完成这项工作。好的,这很好,但是我如何才能使类禁用并停止按钮。。是css吗?是的,使用css或使用实际的
和prop('disabled',true/false)
可能重复的
function slide () {
if ( parseInt( $slideContainer.css('marginLeft') ) >= -2160 ) {
$('.button').addClass('disabled')
$slideContainer.animate({'margin-left': '-='+width},200, function(){
$('.button').removeClass('disabled')
});
}
}