课程
/前端开发
/JavaScript
/JS动画效果
flag值的改变,if判断只让flag =false 了 但是没让他变回 true ,怎么去执行fn(),也就是链式动画
2018-05-17
源自:JS动画效果 6-2
正在回答
是写错了,如果写在定时器外,在下一次执行startMove()之前,flag永远都会是true。
视频中flag的声明位置应该是写错了,实际上应该是写在定时器内。
视频中为什么动画会停止?完全是因为speed归0了,动画停止了,但实际上定时器并没有停止,还在继续运行。
把你的flag声明位置改一改,试想:我在进入定时器之后马上var flag = true;如此,每次执行定时器内的代码时,我们都会重新得到一个flag,值为true;如果运动的动态值(宽、高、透明度)没有达到我们的既定目标值,当前的flag = false,定时器不会停止,程序继续执行,于是在下一次执行定时器内部程序时,我们会再次var flag = true;若这一次运动的动态值达到了目标值,flag就不会赋值为false,如此,可以判断是否需要执行回调函数。
举报
通过本课程JS动画的学习,从简单动画开始,逐步深入各种动画框架封装
2 回答flag怎么赋值
7 回答老师flag的定义会不会有错,flag变FALSE 就在变不回TRUE了
1 回答函数内部的 flag=false; 是不是应该改成 var flag =false?
3 回答为什么flag怎么会变成true?
1 回答flag????