为了账号安全,请及时绑定邮箱和手机立即绑定

$("span").stop(true,true)效果?

$("span").stop(true,true);不应该是停止被选元素的所有加入队列的动画,但允许完成当前动画。

经过上面的测试,效果是:第一个动画过程中点击停止后,立即完成此动画。可是为什么还继续完成了第二个动画呢?不是已经清空队列了么

正在回答

2 回答

.stop(true,true)停止所有动画 ,去的路程中点击停止会直接到达终点,若是返回过程中再点击,会停止到在起点

.stop() 停止当前动画,沿路返回起点,若是返回过程中再点击,会暂停在路中

.stop(true) 停止所有动画 去的路程中点击停止会直接到达终点,若是返回过程中再点击,会暂停在路中

第一个参数的意思是是否清空动画序列,也就是stop的是当前元素的动画效果还是停止后面附带的所有动画效果,一般为false,跳过当前动画效果,执行下一个动画效果;
第二个参数是是否将当前动画效果执行到最后,意思就是停止当前动画的时候动画效果刚刚执行了一般,这个时候想要的是动画执行之后的效果,那么这个参数就为true。否则动画效果就会停在stop执行的时候。

0 回复 有任何疑惑可以回复我~
$(function () {
                $("span").animate({
                    left: "+=100px"
                }, 3000);
                $("span").animate({
                        height: '+=60px',
                        width: '+=60px'
                    }, 3000, function () {
                        $("#tip").html("执行完成!");
                    });  
                $("#btnStop").bind("click", function () {
                   $("span").stop(true,true);
                    $("#tip").html("执行停止!");
                });
            });

代码写成这样效果就出来了

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
jQuery基础课程
  • 参与学习       154768    人
  • 解答问题       7184    个

加入课程学习,有效提高前端开发速度

进入课程

$("span").stop(true,true)效果?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信