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

为什么我的没有任何效果呢。。

<!DOCTYPE html>

<html>

<head>

<title>多物体透明度</title>

<style type="text/css">

div{

background-color:yellow;

height:200px;

width:200px;

margin:20px;

float:left;

opacity:0.3;

filter:alpha(opacity:0.3);

}

</style>

</head>

<body>

<div></div>

<div></div>

<div></div>

<div></div>

<script type="text/javascript">

window.onload=function(){

var oDIV=document.getElementsByTagName('div');

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

oDIV[i].alpha=30;

oDIV[i].onmouseover=function(){

onMove(this,100);

}

oDIV[i].onmouseover=function(){

onMove(this,30);

}

}

}

function onMove(obj,iTarget){

clearInterval(obj.timer);

obj.timer=setInterval(function(){

var speed=0;

speed=(iTarget-obj.alpha)/10;

if (obj.alpha==iTarget) {

clearInterval(obj.timer);

}

else{

obj.alpha+=obj.speed;

                obj.style.opacity=obj.alpha/100;

                obj.style.filter="alpha(opacity:"+obj.alpha+")";

}

},30)

}

</script>

</body>

</html>


正在回答

2 回答

<!DOCTYPE html>
<html>
<head>
    <title>多物体透明度</title>
    <style type="text/css">
        div{
            background-color:yellow;
            height:200px;
            width:200px;
            margin:20px;
            float:left;
            opacity:0.3;
            filter:alpha(opacity:0.3);
        }
    </style>
</head>
<body>
<div></div>
<div></div>
<div></div>
<div></div>
<script type="text/javascript">
    window.onload=function(){
        var oDIV=document.getElementsByTagName('div');
        for (var i = 0; i < oDIV.length; i++) {
            oDIV[i].alpha=30;
            oDIV[i].onmouseout=function(){
                onMove(this,100);
            }
            oDIV[i].onmouseover=function(){
                onMove(this,30);
            }
        }
    }
    function onMove(obj,iTarget){
        clearInterval(obj.timer);
        obj.timer=setInterval(function(){
            var speed=0;
            speed=(iTarget-obj.alpha)/10;
            if (obj.alpha==iTarget) {
                clearInterval(obj.timer);
            }
            else{
                obj.alpha+=speed;
                obj.style.opacity=obj.alpha/100;
                obj.style.filter="alpha(opacity:"+obj.alpha+")";
            }
        },30)
    }
</script>
</body>
</html>

你两个事件都写成 onmouseover   

obj.alpha+=speed;   这一行是speed,不是obj.speed

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

张筱诺8983 提问者

非常感谢!
2015-12-09 回复 有任何疑惑可以回复我~

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

oDIV[i].alpha=30;

oDIV[i].onmouseover=function(){

onMove(this,100);

}

oDIV[i].onmouseover=function(){

上面最后一行应该为oDIV[i].onmouseout=function(){

else{

obj.alpha+=obj.speed;

上面最后一行应该为:obj.alpha+=speed;


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

举报

0/150
提交
取消
JS动画效果
  • 参与学习       113925    人
  • 解答问题       1443    个

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

进入课程

为什么我的没有任何效果呢。。

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