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

JS动画效果

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

已采纳回答 / 墨曌
那个确实写错了,应该把flag写进定时器里

已采纳回答 / 慕之光
我试过把var flag = true; 放置到for in 上方和放在function start(obj,json,fn)这个函数的局部内都是可行的。两者的区别是:前者是在setInterval(   ,30)内,所以相当于每30ml对flag 赋一次 true; 后者的var flag = true; 相当于是“全局变量”,在setInterval(   ,30)内当然可以使用flag,更可以改变flag.

已采纳回答 / 泠泉石上
变量定义位置错了,应该在计时器里边定义obj.timer=setInterval(function(){    var speed,a=parseInt(getStyle(obj,'width'));    speed=(wid-a)/10;    speed=speed>0?Math.ceil(speed):Math.floor(speed);    if(a==wid)        clearInterval(obj.timer);    else        obj.style.width...

已采纳回答 / 权哲
if(boss.style.opacity==itarget)clearInterval(timer); 这块没能清除 计时器,boss.style.opacity 他算出的是浮点数就是0.3不可能等于itarget30。把他换成alpha 就好了。

已采纳回答 / lemonda
嗯经评测 在DW里运行在 FireFox,Chrome,IE8 都可以运行的。

已采纳回答 / 浪子丶
最开始没有把CSS样式初始化,加一段代码    *{margin:0;padding:0;}即可以完美的解决你这个问题

已采纳回答 / 慕之光
事实上对于javascript这样的弱类型语言,使用var和不使用var都可以定义一个变量,在函数内使用var定义的变量是一个局部变量,不使用var定义的变量是一个全局变量,而obj.timer = setInterval这种方式算不上定义,这里obj已经是一个对象了,obj.timer代表为这个对象创建一个属性,然后才能使用这个属性,我们可以为它创建很多属性,根据需要来。ps:大多时候我们想自定义一个对象,可以这样写:var myobj1 = Object();然后为你的对象添加属性,如myobj.nu...

已采纳回答 / mirrorofsky
1.var chgOpacity=document.getElementById('chgOpacity');oShareSide.onmouseover = function (){     //oShareSide.onmouseover 改为chgOpacity.onmouseover 2.oShareSide  //这个变量没有声明过,所以oShareSide.onmouseover为null。

已采纳回答 / ahao430
这里的this不是pic[i]了。this在不同情况下意义不同。所以老师在前面用变量"_this"赋值保存下来。

已采纳回答 / 漫步人生路他爸爸
<...code...> 我把你的obj.alpha += speed;改成了obj.alpha = Math.round((obj.alpha + speed)*10)/10;就可以了具体为什么会出错是因为计算机成生小数的过程有可能有点偏差,你要拿3也许它给的是3.000000...004所以我们四舍五入一下就好了<...图片...>

已采纳回答 / 慕粉3317258
如果是border等未定义的属性,它获取到的是(0px none rgb(0,0,0))你说的这个top,left如果未定义获取到的是auto所以应该是获取不到你想要的值 0 

已采纳回答 / qq_十万个为什么_2
timer= setInterval(function(){},30),如果不写,你的定时器就一直是timer=null;

已采纳回答 / 旭日A
 var box = document.getElementById("box");            box.style.filter="alpha(opacity:"+alpha+");";            box.style.opacity=alpha/100;这最后三行代码要放在计时器setInterval的函数内啊
课程须知
1.您至少已经具备JavaSript的知识。2.您已经具备一些开发经验。
老师告诉你能学到什么?
1.使用定时器实现简单动画。2.如何一步步封装库。2.培养编程的思想。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消