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

JS动画效果

vivian Web前端工程师
难度初级
时长 2小时 8分
学习人数
综合评分9.60
537人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.4 逻辑清晰
0.5的出来,保证不打死你!
链式调用中,第二个调用函数startMove(this,"someAttr",num)中不能直接用this。原因是this指向错误,这是由函数声明引起的。函数声明会进行函数提升,此时变为了全局函数。而this对象是在运行时基于函数的执行环境绑定的,那么this就指向了window,而不是当前的对象。如果“var this = this”,这时就可以使用this了。
@临风独舞翩跹
“第一个值达到目标,flag被改为了true,for循环第二个值时,如果未达标,依然会再次把flag设为flase”,我觉得你说的有点问题,如果是前面的属性循环都为达标,而最后json的属性先达标了呢?flag不就为true,就结束定时器了呢...flag还是放在里面好,如果要放在外面的话,可以为每个属性都设置一个flag,不过麻烦。

最新回答 / 小花来了
 var divL = document.getElementById('smooth'),     timer = null;这里已经声明了  这里同事声明了2个变量,一个divL 一个timer         想一次声明多个变量可以用逗号连接 例如: var a = 0, b=1, c =3;这里同时声明了a b c 三个变量并赋值
其实老师写的运动板块代码是靠速度减到零才停止的,并没有关闭定时器;你可以把下面的删除
if(flag)
{
clearInterval(obj.timer);
if(fn)
{
fn();
}
}

已采纳回答 / 你好西蒙
getStyle里面的if(obj,currentStyle),应该是用点号if(obj.currentStyle)

已采纳回答 / 慕姐4093395
参照你的代码看看,也许对你有帮助<!DOCTYPE html><html><head><meta charset="UTF-8"><title>Document</title><style type="text/css">*{padding:0;margin:0;}ul,li{list-style:none;}ul li{width:200px;height: 100px;background: yellow;margin...

已采纳回答 / Valarmorghuils
其实是:alpha=alpha + speed           alpha+=speed是简写

最新回答 / _____________12
您找着原因了吗?我也有这个疑问,放在onload外面按理说是全局变量,为什么在onload里就访问不了了呢??
调到0.5之后,很诱人的声音
@星辰_22 大喷子!!!滚粗!!!
我发现不管老师,讲的如何,总是会有那么几个喷子,我只想说 你他么的既然是喷子来学习这个干毛呀!?特别是我看到有个喷声音太大的,你他么的就不知道调整下音量?老师声音小了 也喷 声音大了也喷 你们这么喜欢喷 来这里干嘛?
课程须知
1.您至少已经具备JavaSript的知识。2.您已经具备一些开发经验。
老师告诉你能学到什么?
1.使用定时器实现简单动画。2.如何一步步封装库。2.培养编程的思想。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消