这行的问题有点大 var oDiv=document.getElementById('div1');

来源:2-2 JS透明度动画

qq_GreenOrRed_0

2016-09-10 20:27

var oDiv=document.getElementById('div1');

为什么吧带标志 // 的这行写在function里就有效 写在外面当成全局变量就无效呢 就显示说没定义?


window.onload=function(){

var oDiv=document.getElementById('div1'); //

oDiv.onmouseover=function(){

startMove(100);

}

oDiv.onmouseout=function(){

startMove(30);

}

}

function startMove(){

var oDiv=document.getElementById('div1'); //

clearInterval(timer);

timer=setInterval(function(iTarget){

if(alpha==iTarget)

{clearInterval(timer);}

else

{

alpha<iTarget?speed=10:speed=-10;

alpha=alpha+speed;

oDiv.style.opacity=alpha/100;

oDiv.style.filter='alpha(opacity:'+alpha+')';

}

},30)

}


写回答 关注

4回答

  • 向死而生3491500
    2016-09-22 16:37:59
    已采纳

    嗯...

    qq_Gre...

    非常感谢!

    2016-09-24 01:27:01

    共 1 条回复 >

  • 向死而生3491500
    2016-09-19 08:06:12

    Html执行代码的格式是重上往下执行,而window.onload函数是页面加载完后执行,所以,当页面加载完后,并不会执行window.onload上面的var oDiv=document.getElementById('div1');这一行代码,只会执行里面的程序代码。。。

    qq_Gre...

    就是说 有window.onload的话,js只执行window.onload后面的functiom 是吗?js中window.onload前面的都不会去执行?

    2016-09-21 12:35:31

    共 1 条回复 >

  • 差不多菇凉ing
    2016-09-13 09:19:27

    打开浏览器就先直接加载window.onload函数

    qq_Gre...

    为什么吧带标志 // 的这行写在function里就有效 写在外面当成全局变量就无效呢 就显示说没定义?

    2016-09-13 13:22:48

    共 1 条回复 >

  • 慕粉_紫色萱依草
    2016-09-10 20:51:33

    如果把这行放到onload里应该是可行的 不用再在function里面定义

    qq_Gre...

    什么叫放在onload里? 放在onload后的function的第一行吗?

    2016-09-10 21:47:39

    共 1 条回复 >

JS动画效果

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

113923 学习 · 1443 问题

查看课程

相似问题