请老师查看,代码是否可以优化

来源:3-12 编程练习

慕斯9523191

2020-08-24 21:38:14

<!DOCTYPE html>

<html>

    <head>

    <meta charset="UTF-8">

    <title>onchange()</title>

    <style type="text/css">

     #div{

     width:300px;

     height:300px;

     border:2px solid gray;

     margin:100px  0  0 200px;

     }

    </style>

    <script type="text/javascript">

       //补充代码

       window.onload=function(){

           var color=document.getElementById("color");

           var div=document.getElementById("div");

           color.onchange=function(){

               var colorValue=this.value

              if(colorValue==0){div.style.backgroundColor="#fff";div.innerHTML ="我没有任何变化"; 

                  

              }else if(colorValue=="yellow"){

                  div.style.backgroundColor="yellow";

                  div.innerHTML ="我的背景变成了yellow色"; 

              }else if(colorValue=="orange"){

                  div.style.backgroundColor="yellow";

                  div.innerHTML ="我的背景变成了yellow色";

              }else if(colorValue=="pink"){

                  div.style.backgroundColor="pink";

                  div.innerHTML ="我的背景变成了pink色";

              }else if(colorValue=="purple"){

                  div.style.backgroundColor="purple";

                  div.innerHTML ="我的背景变成了purple色";

              }else return;

                   

               

           } 

       }

    </script>

</head>

<body>

        <div>

         <span>请选择您喜欢的颜色:</span>

         <select id="color">

         <option value="0">请选择</option>

         <option value="yellow">黄色</option>

         <option value="orange">橘色</option>

         <option value="pink">粉色</option>

         <option value="purple">紫色</option>

         </select>

        </div>

<div id="div">我是div</div>

 </body>

</html>


写回答

1回答

好帮手慕夭夭

2020-08-25

同学你好,代码可以如下优化:

因为获取的vlue值就是对应的颜色,所以不需要每一个都判断。if判断中,当条件可以转换为true,则执行,如果获取的值转换为布尔类型为false,则执行else。另外,注意变量与字符串进行拼接要使用加号。

http://img.mukewang.com/climg/5f44714b09b10b9210390869.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

0

0 学习 · 40143 问题

查看课程