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

为什么 var timer=null 放别的地方就不行了 动画就抖动

为什么 var timer=null 放别的地方就不行了 动画就抖动

慕桂英2593124 2017-04-24 16:51:04
<head><meta http-equiv="Content-Type" content="text/html; charset=utf-8" /><title>无标题文档</title> <style type="text/css">body,div,span{    margin: 0;    padding: 0;} #div1{     width: 200px;     height: 200px;     background: red;     position: relative;     left: -200px;     top: 0; } #div1 span {     width: 20px;     height: 50px;     background: blue;     position: absolute;     left: 200px;     top: 75px; }</style><script>var timer=null;function smove(taget){ clearInterval(timer); var ddd=document.getElementById('div1'); timer=setInterval(function(){ if(ddd.offsetLeft>taget)   var speed=-10;   else   var speed=10; if(ddd.offsetLeft==taget) clearInterval(timer) else{ddd.style.left=ddd.offsetLeft+speed+'px'}},30) } </script> </head><body><div id='div1'>     <span>分享</span> <!-- 点分享时div1有效,事件冒泡 --></div></body><script>window.onload=function(){ var ddd=document.getElementById('div1'); ddd.onmouseover=function(){ smove(0); } ddd.onmouseout=function(){ smove(-200); }}</script></html>
查看完整描述

3 回答

已采纳
?
西兰花伟大炮

TA贡献376条经验 获得超318个赞

放在函数里面是不行的,确实会抖动,鼠标移入移出,每次都会调用函数,创建变量,并赋值null,肯定与计时器有冲突,毕竟定义在全局只是初始化一下这个变量,以后都靠定时器来控制

查看完整回答
1 反对 回复 2017-04-25
?
我爱吃牛排

TA贡献47条经验 获得超127个赞

放别的地方就不行了 你想放在哪啊 把抖的代码发上来

查看完整回答
反对 回复 2017-04-25
  • 3 回答
  • 1 关注
  • 1353 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信