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

根据同学们的评论和老师的代码,修改了下,但还是有BUG,跪求大神解答

根据同学们的解答,把flag=true设置在定时器中,然后for……in设置在for循环之外,确实解决了两个bug:

  1. 回调函数fn()无法执行的问题;

  2. 有多个运动值的时候,第一个运动已经达到目标,第二个运动还没达到目标就清除了计时器的问题;

但是~~~~~~~~~~~~~~~我是神转折~~~~~~~~~~

 在json对象中,设置第一个运动的目标比第二个运动的目标大的时候,第二个运动的目标会首先到达,但是第一个运动还没到达目标,这个时候耶清除计时器了!

startMove(that,{'width':400,'height':150},function(){

startMove(that,{'opacity':100});

}); 

height到达目标之后,width还没到达目标就清除计时器了,我看了好久,没人说到这个BUG,求大神有没有人解决了这个问题,思路如何?谢谢了。

http://static.mukewang.com/img/59aee5de0001384711520548.jpg

http://static.mukewang.com/img/59aee5df0001dc0911310604.jpg


正在回答

1 回答

http://img1.sycdn.imooc.com//59b7dffb0001161c11620628.jpg

仔细检查检查

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

风飘叶摇 提问者

谢谢您的仔细检查,我还真没发现第一个错误,谢谢您。不过第一个错误不影响我测试的结果。因为那是个针对IE的属性,IE我现在都不用了的,我用的是360浏览器测试的,内核是谷歌的内核。 第二个您指出的变量我其实是直接定义在了 if(wid!=json[attr]){ //如果,不是所有的运动都到达了终点 var flag=false; }else{ var flag=true; } 这个判断中,这样测试起来也没有什么问题,不知道这样是不是会有问题,实际测试没报错呢
2017-09-13 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

根据同学们的评论和老师的代码,修改了下,但还是有BUG,跪求大神解答

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