我这个代码哪里出错了,为什么鼠标移上去没用的?

来源:4-1 JS多物体动画

这就尴尬了

2018-05-03 10:19

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<style type="text/css">

body{

margin: 0px;

}

li{

width: 200px;

height: 50px;

list-style-type: none;

margin-bottom: 10px;

background-color: brown;

}

</style>

<script type="text/javascript">

window.onload = function(){

var myli = document.getElementsByTagName('li');

for(var i=0;i<myli.length;i++){

myli[i].timer=null;

myli[i].onmouseover = function(){

startMove(this,500);

}

myli[i].onmouseout = function(){

startMove(this,200);

}

}

}

function startMove(obj,myattr){

clearInterval(obj.timer);

obj.timer = setInterval(function(){

var speed = (myattr-obj.offsetWidth)/10;

speed = speed>0?Math.ceil(speed):Math.floor(speed);

if(obj.offsetWidth==myattr){

clearInterval(obj.timer);

}else

{

obj.offsetWidth=obj.offsetWidth+speed+'px';

}

},30)

}

</script>

</head>

<body>

<li></li>

<li></li>

<li></li>

<li></li>

<li></li>

<li></li>

</body>

</html>


写回答 关注

1回答

  • 这就尴尬了
    2018-05-03 10:43:18

    已解决,最后的obj.offsetWidth=obj.offsetWidth+speed+'px';应是obj.style.width=obj.offsetWidth+speed+'px';

JS动画效果

通过本课程JS动画的学习,从简单动画开始,逐步深入各种动画框架封装

113923 学习 · 1443 问题

查看课程

相似问题