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

点击reset函数也调用动画的bug处理!

这个程序有BUG,当我点击SHOW的按钮当图片显现出来后赶紧在点击reset按钮,动画从新播放了,而且图片显现出来了!解决办法:可以在全局定义一个动画名称,然后在reset函数中的时候首先调用clearInterval(函数名),这样就没有以上的问题了,我试了很多遍都可以,大家可以试一试

正在回答

2 回答

可以先定义一个变量存储定时器的状态,

代码可以这样写:

var state = false;
function reset(){
    clearInterval(timer);
    inintCanvas();
    state = true;

}

function show(){
    var timer = setInterval(function(){
        slippingRegion.r +=20;
    draw(img,slippingRegion);
    if (slippingRegion.r>= 2*Math.max(oCanvas.width,oCanvas.height)||state) {
        clearInterval(timer);
        state = false;
    }
    },30);
    
}


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

那是show函数情况下设置的每30毫秒增加20像素的上限没有大于设定的上限,动画还没有清除的原因

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

举报

0/150
提交
取消

点击reset函数也调用动画的bug处理!

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