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

JS动画效果

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

已采纳回答 / 忐自
建议还是加入Math.round,因为做出来是给不同浏览器用的嘛,你的可以其他人就未必了,以防万一~~~~

已采纳回答 / biuabiuabiu
首先你定义的是函数,你调用了吗?其次你函数只是创建了,没有插入到窗口,最后补上这一句document.body.appendChild(div);就行了 

已采纳回答 / 舒硕
parseInt(oDIv.style.width)这个是将字符串转换为整数 可以进行数学运算的,你直接用的话oDIv.style.width这个只是一个字符串 使用数学运算会出错的用加的话只是字符串的拼接就像"1"+"1"=="11"而1+1==2前者是字符串连接运算,后者是数学运算,你这个(oDIv.style.width-1)+'px';浏览器中应该是报错的,你审查元素看看控制台

已采纳回答 / 残破Q
还有一般老师讲的代码在style的第一行都会加上*{padding:0;margin:0}这行代码的,建议你以后也用上

已采纳回答 / lixp2000
应该将width=200px;height=200px;width=20px;height=20px;改写成width:200px;height:200px;clear(timer);应写成clearInterval(timer)

已采纳回答 / 唐丶唐
写错了哥  window.onload=function(){}  你的括号少了;加上之后 运行没问题  如果再有问题可能就是浏览器了

已采纳回答 / lixp2000
#div1为span的父元素,,当代码中多个div,并且都含有span时;此时你想获取某个span元素时,就需要你指定到具体哪个父元素下的span元素了。

已采纳回答 / 佐佑918
在定时器的前面,清除一下定时器,clearInterval(timer)

已采纳回答 / s_nn
会出现alpha>target的情况 —— 假如当前的值是100,但是你的目标值是30,不就是触发过了onmouseover事件了吗?要执行图形“缩回”了,即从右向左,速度不就是负值了吗?我这样说明白吗?

已采纳回答 / qq_云上_0
var speed=(iTarget-mybox.offsetLeft)/20;这里的速度值表示,当你的目标值大于当前的宽度,speed大于0表示你向右走,要“+“正speed加一个宽度.如果speed小于0,你要向左走,你的宽度需要越来越小,所以speed需要"-"只有向下取整。不知道有没有描述清楚。

已采纳回答 / 飞舞的墨
如果(目标值-当前值)/10  不能整除的话。运动到最后,是1~9之间的数字来除以10,结果是个小于1的小数,如果向下取整,那就是0,speed=0,意味着不再发生变化。也就是说,如果用Math.floor(speed),最后不到10个像素的时候,就不会动了。

已采纳回答 / 飞舞的墨
这两次定义的odiv的作用域都是在各自的函数体内。也就是startMove()是获取不到onload的匿名函数中定义的odiv.如果你想只定义一次,那就将odiv定义成全局变量,这个页面的任何函数都可以直接获取的到。

已采纳回答 / 吃瓜神教_03349355
在div1的css里面设置z-index的值,大于0就能覆盖,等于0就是你现在的情况。

已采纳回答 / 飞天意大利面神兽
首先是第34行改成<script type="text/javascript">再就是,第45行,那个magin-left在js不是这么用的,而是magrinLeft.

已采纳回答 / TOTO晶
鼠标移出时,aph是从100一直减小变到30,此时,aph=100大于目标值isp=30,speed为-10,并不是鼠标开始移出时aph就是30
课程须知
1.您至少已经具备JavaSript的知识。2.您已经具备一些开发经验。
老师告诉你能学到什么?
1.使用定时器实现简单动画。2.如何一步步封装库。2.培养编程的思想。

微信扫码,参与3人拼团

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

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

本次提问将花费2个积分

你的积分不足,无法发表

为什么扣积分?

本次提问将花费2个积分

继续发表请点击 "确定"

为什么扣积分?

举报

0/150
提交
取消