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

JS动画效果

vivian Web前端工程师
难度初级
时长 2小时 8分
学习人数
综合评分9.60
537人评价 查看评价
9.8 内容实用
9.6 简洁易懂
9.4 逻辑清晰

最新回答 / 一墨飞雪
你找到的错误我后来就发现了并改了,但是在ff中就还是不行,但在ie里就能成功
解决问题了,我的speed没有放到time函数里面。
老师,我也像你一样给每个div都设置timer了,鼠标划得快点没有问题,但是鼠标速度再快一些还是会出现bug,怎么解决?
老师花10分钟讲完,我得花多半天才弄出来同样效果╮(╯-╰)╭
前面学了javascript的原生实现,搞懂之后再来看这个jquery案例,就好容易理解。
jquery本质上无非就是封装好了的javascript实用函数集。
这例子 兼容性真他妈的好啊!兼容所用浏览器!
将速度改为变量就可以了,不错!
不明白这些评论再说什么?什么叫flag一定要在定时器里面?我在外面也一样能行啊,你说的是函数里面吧。还有根本不需要再写一步 else(flag=true) 也一样完美运行,一点多余的偏差都没有。
有一个else后面不能跟两个大括号,for(var attr in json)要都括起来,老师没写对
}else{
alpha+=speed
oDiv.style.filter='alpha(opactiy:'+alpha+')'
oDiv.style.opacity=alpha/100;
}
},30)
}


这第一句话啥意思
看到有些评论都把逻辑搞反了,用实际运行数据说一下:var y1=mDiv.offsetLeft;
speed=(0-mDiv.offsetLeft)/10;
mDiv.style.left=mDiv.offsetLeft+speed+'px';
var y2=mDiv.offsetLeft;
这时iTarget=0,正向;故speed>0.
当y1=-5;y2=-5;speed=0.5:如果speed向上取整ceil(speed)=1;y2=y1+speed=-4;循环,y2每次加1,直至取0;如果speed向下取整floor(speed)=0;y2=y1+speed=-5;循环,y2不变;
讲的很好,让我以前一直纠结的问题得到解决。

最新回答 / qq_秦时明月_7
后面分号掉了吧,加上分号试试

已采纳回答 / 哈喽姑娘
http://www.imooc.com/qadetail/121930应该是他回答的这样
课程须知
1.您至少已经具备JavaSript的知识。2.您已经具备一些开发经验。
老师告诉你能学到什么?
1.使用定时器实现简单动画。2.如何一步步封装库。2.培养编程的思想。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消