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

执行没效果,想知道哪里错了?

<!DOCTYPE html>
<html xmlns="http://">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8"></meta>     <!-- 可让中文正常显示 -->
    <title>鼠标滑过改变透明度</title>
    <link href="css/main.css" rel="stylesheet" />
    <style type="text/css">
    #div1{
        width: 200px;
        height: 200px;
        background: red;
        filter:alpha(opacity:30);
        opacity: 0.3;
    }
    </style>

    <script>
     window.onload=function(){
        var oDiv=document.getElementById('div1');
        oDiv.onmouseover=function(){
            startMove(100);
        }
        oDiv.onmouseout=function(){
            startMove(30);
     }

     var timer=null;
     var alpha=30;
     function startMove(iTarget){
         clearInterval(timer);
         var oDiv=document.getElementById('div1');      //再声明一次,因为不是全局变量
         timer=setInterval(function(){
            var speed=0;
            if (alpha>iTarget) {
                speed=-10;
            }
            else if(alpha<iTarget){
                speed=10;
            }
            if (alpha==iTarget) {
                clearInterval(timer);
            }
            else{
                alpha+=speed;
                oDiv.style.filter='alpha(opacity:'+alpha+')';
                oDiv.style.opacity=alpha/100;         //火狐或者chrome浏览器才能正常显示
            }
         },30)
     }
    </script>

</head>

<body>
<div id="div1" ></div>
</body>
</html>

想知道我这代码哪里错了,在360浏览器和chrome都执行没效果啊,看不出来透明度变化

正在回答

1 回答

1.删除 37行else if(alpha<iTarget)的 if(alpha<iTarget)

2.在26行加一个}


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

叶绿体线粒体 提问者

哇,太感谢啦,看了好久都没看出来!
2016-08-03 回复 有任何疑惑可以回复我~
#2

kx00012kx

请教一下大神: oDiv.style.filter='alpha(opacity:'+alpha+')';在这一行里的“+alpha+”,alpha前后各有一个加号,他们分别代表了什么意思啊?
2016-08-08 回复 有任何疑惑可以回复我~
#3

东渡扶桑 回复 kx00012kx

在单引号中间的是字符串,加号中间的是变量,比如var word=100;document.write('this number is'+word+'!');输出的句子是:this number is 100! 加号可用于拼接字符串和变量,字符串需放在单引号或者双引号里面。
2016-08-16 回复 有任何疑惑可以回复我~
#4

kx00012kx 回复 东渡扶桑

终于明白了,非常感谢!
2016-08-18 回复 有任何疑惑可以回复我~
#5

带着棒棒糖上战场 回复 kx00012kx

这是字符串拼接符 符号的意思你得多去看看!
2016-09-15 回复 有任何疑惑可以回复我~
查看2条回复

举报

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

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

进入课程

执行没效果,想知道哪里错了?

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