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

why正方向和负方向值不同才执行代码

为什么我的代码和老师一样,但是执行不了。正方向我的是+1,负方向我是-1就不行,除非负方向我是-10才行,这是为什么,width和height我设置得和老师一样啊

<!doctype>

<html>

<head>

</head>

<style type="text/css">

#div1

{

width:200px;

height:200px;

background:red;

position:relative;

top:0px;

left:-200px;

}

#div1 span

{width:20px;

height:50px;

background:blue;

position:absolute;

top:75px;

left:200px;

}

</style>

<script type="text/javascript">

window.onload=function()

{var odiv=document.getElementById("div1");

odiv.onmouseover=function()

                                  {

  startmove();

  }

odiv.onmouseout=function()

                                  {

  startmove1();

  }

}

var timer=null;

function startmove()

                          {clearInterval(timer);

  var odiv1=document.getElementById("div1"); 

  timer=setInterval(function()

                           {

if(odiv1.offsetLeft>=0)

                               {

clearInterval(timer);

}

                         else{

 odiv1.style.left=odiv1.offsetLeft+1+'px';

},20)

 }

 

 function startmove1()

                          {clearInterval(timer);

  var odiv1=document.getElementById("div1"); 

  timer=setInterval(function()

                           {

if(odiv1.offsetLeft<=-200)

                               { 

clearInterval(timer);

}

                         else{

             

 odiv1.style.left=odiv1.offsetLeft-10+'px';

},30)

 }

 

</script>

<body>

<div id="div1">

        <span id="share">分享</span>

</div>

</body>

</html>


正在回答

3 回答

还有一般老师讲的代码在style的第一行都会加上*{padding:0;margin:0}这行代码的,建议你以后也用上

0 回复 有任何疑惑可以回复我~
#1

不能飞的鱼 提问者

非常感谢!
2016-06-15 回复 有任何疑惑可以回复我~

不知道为什么运行你这个程序,会出现body的margin值,这样div的实际的offsetLeft值跟预期的有差别。你在style的第一行前面加上  *{margin:0px;} 就可以了

0 回复 有任何疑惑可以回复我~

样式里面  加个*{ margin:0; padding:0;}

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

why正方向和负方向值不同才执行代码

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信