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

JS动画效果

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

已采纳回答 / 从此浪迹天涯了无牵挂
你获取对象名为oDiv 对象名加上.style意思是是获取某个属性,但这里的.style只能够获取行内对象,也就是在html里面写的样式。head里面的获取不到。因为你写了<div id="div1" style="width:200px;">所以oDiv.style.width一开始获取到的是200pxoDiv.style.width一开始是等于200px的parseInt(oDiv.style.width)-1+'px'这部分呢,这里注意,oDiv.style.width。这里获取的是一个...

已采纳回答 / 从此浪迹天涯了无牵挂
父元素相对定位,子元素绝对定位,这时候,子元素就不再是相对于浏览器窗口了。而是相对于父元素窗口左上偏移

已采纳回答 / 追风的少年丶
这个计时器会一直执行,只有clearInterval()才能结束周期执行,所以它是有时间间隔的多次循环,当alpha==iTarget的时候,会执行clearInterval(),这个循环也就结束了

已采纳回答 / code16
<...code...>调整代码缩进后,看到的第一个问题,getComputedStyle

已采纳回答 / code16
<...code...>更改后的代码,更改有两点:<...code...>和<...code...>之前的形式无法正确调用函数!但是这样的代码跑了之后 就会发现,width会一直增长下去,原因在视频里也提到了,是border的问题,你设置的是cc++,但是每次增长的是3px。改正的方法可以按照视频里提到的,也可以把width的设置放在cc判断的里面(效果是没有前面的方法好,而且依旧是每次增加3px)。

已采纳回答 / code16
把  var iCur=parseInt(getStyle(obj,attr));   放在for循环里试试 你的attr是在for循环里定义的

已采纳回答 / 慕妹5044199
你把startMove拿出来看看是怎么样的。应该是把之前的定时器给清除了

已采纳回答 / qq__2587
你的timer = setInterval里面的单词 function 打错了朋友 敲代码的时候 注意啊!!

已采纳回答 / 丁吉瑞斯
同学,把你的代码中document.getElementById中的id(小写I)全部换成Id(大写I)就ok了哦

已采纳回答 / 二师弟
<...code...>speed的定义这段代码要放到定时器内部函数里去

已采纳回答 / igual
这个是针对ie对于透明度的处理。正确格式应该是: filter:alpha(opacite=30)。w3c是等于符号,不知道你这个冒号是否正确

已采纳回答 / chengyoubin
那么如果width不是固定的,而是作为参数传进来的,那在外面传参数的时候,参数必须是以字符串的方式传,比如 getStyle(oDiv,'width'),这样传到函数里的也是一个字符串,对应的里面如果用点或者[''],就是这样:obj.currentStyle['width'] 或者 obj.style.'width'.这两种写法,显然第二种是错的,只能写成第一种。所以如果样式属性如果是当作参数传进来的,只能以['']的方式来接收。

已采纳回答 / 靖_pacify
     var timer=null;       function startMove(speed,itarget){           //       function startMove(itarget){           clearInterval(timer);           var red=document.getElementById('red');           var timer=setInterval(function(){               //单参数...
课程须知
1.您至少已经具备JavaSript的知识。2.您已经具备一些开发经验。
老师告诉你能学到什么?
1.使用定时器实现简单动画。2.如何一步步封装库。2.培养编程的思想。

微信扫码,参与3人拼团

微信客服

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

帮助反馈 APP下载

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

公众号

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

友情提示:

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消