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

JS动画效果

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

最新回答 / qyy2499760117_叶子
使用谷歌浏览器,按F12进行调试就只知道错在哪里,习惯用很容易找错的,我稍微调试一下就可以看出这句‘if(alpha>iTarget) ’里的iTarget还没有定义,所以它找不到就会出错了,在这句‘oDiv.onmouseout=function(){startMove(30);}’里的startMove(30),是有参数的,所以你写startMove()函数时也应传一个参数,要对应的,所以改成function startMove(iTarget)就好了;

最赞回答 / 临风独舞翩跹
oImg[i].onmouseover = function () {            var _this = this;            startMove(_this, 'opacity', 100, function () {                startMove(_this, 'height', 150, function () {                    startMove(_this, 'width', 250);                });  ...

最新回答 / rouken
var a=document.getElementsByTagName("div");是不是取错标签了,应该是var a=document.getElementsByTagName("a");吧

最新回答 / 陈国栋0
if else 语句错了,else后面没加花括号.

最新回答 / TOTO晶
var flag=true;  及for(var attr in json) 应该放在定时器n内, json的for循环之前if(flag){清除定时器和fn回调}应该放在定时器n内, json的for循环之后具体解释可以参考<JS动画效果课程 6-2小节>的评论区讨论,希望能帮到你更改后的参考code如下(未贴上来的其他code不变):<...code...>

最新回答 / 慕粉3498277
虽然有点久了,不过最近正好刚弄懂了这个问题,希望能对你有帮助!这里要提到offsetLeft与style.left的一点区别。style.left是读写的,offsetLeft是只读的,所以要改变div的位置,只能修改style.left。(1)确实是只有设置为行间样式的style属性才能被获取(读),但这里我们用到的是style的‘写’,所以不矛盾。(2)你可以试一下,把上面的if(Obj.offsetLeft==0)改为if(Obj.style.left==0),会发现没有任何效果,就是因为这里要用到...

最赞回答 / weibo_慕丝7400593
在startMove函数执行时,启动清除所有的定时器.function startMove(){ clearInterval(timer);...}

最新回答 / 苍白的尾巴
在浏览器里用F12调试之后发现你在 startMove()这个函数处少写了“ } ”。38行后面。

最赞回答 / 慕粉3244739
当前a标签下的第一个i标签,因为getElementsByTagName获取的为一个数组,按照这个例子就是获取到一个只有一个i标签的数组,要想获取到这个数组中的i标签就要加[0]才能获取

最新回答 / Sunnylincon
倒数第六行obj.style.Width=obj.offsetWidth+speed+"px";中前面Width大写了,改成小写即可

最新回答 / biuabiuabiu
你代码写错了吧?没做兼容吗

最新回答 / 小西瓜籽
当(itarget-odiv.offsetLeft)/20=10/20=0.5PX时,oDiv.style.left = oDiv.offsetLeft+speed+'px';=190+0.5=190.5px,像素出现了小数程序无法执行下去。然后 把speed=0.5向上取整为1,在进行一次else中的代码 ,结束        
课程须知
1.您至少已经具备JavaSript的知识。2.您已经具备一些开发经验。
老师告诉你能学到什么?
1.使用定时器实现简单动画。2.如何一步步封装库。2.培养编程的思想。

微信扫码,参与3人拼团

微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消