完美运行,是不是最简代码

来源:4-1 编程挑战

手刻CPU

2018-07-19 13:00

 <!--当点击相应按钮,执行相应操作,为按钮添加相应事件-->    
 <input type="button" value="改变颜色" onclick="colorchenge()" >      
 <input type="button" value="改变宽高" onclick="sizechenge()">    
 <input type="button" value="隐藏内容" onclick="hideelement()">    
 <input type="button" value="显示内容" onclick="nohideelement()">    
 <input type="button" value="取消设置" onclick="cancel()">  </form>  
 <script type="text/javascript">//定义"改变颜色"的函数    
 var text=document.getElementById("txt");    
 function colorchenge(){        
 text.style.color="red";        
 text.style.backgroundColor="#CCC";    }
 //定义"改变宽高"的函数    
 function sizechenge(){        
 text.style.width="800px";        
 text.style.height="600px";    }
 //定义"隐藏内容"的函数    
 function hideelement(){        
 text.style.display="none";    }
 //定义"显示内容"的函数    
 function nohideelement(){        
 text.style.display="block";     }
 //定义"取消设置"的函数    
 function cancel(){        
 if(cancel=true){            
 text.style="none";        }        
 else{                    }    }  
 </script></body></html>

以上代码编辑后测试可运行相应要求,请各位大神看看是否为最简化的代码;

烦请指正和优化,欢迎讨论

写回答 关注

8回答

  • 舊夢
    2018-07-19 14:24:39
    已采纳

    话说,,,为什么要用相等判断啊,,if()就是判断是否是ture的,,,在用confirm时就会得到ture或false,无论是哪一种改法我都觉得没有必要判断是否等于ture

    手刻CPU

    对的,用==或者直接if(变量)即可,谢谢

    2018-07-20 13:20:48

    共 1 条回复 >

  • DYmac
    2018-07-21 17:56:28

    我即使是copy了你的代码,点了按钮,文字还是没有变化= =

    手刻CPU

    1,我没有写<input>标签中调用函数的部分。这部分你可以检查一下。 2,标点符号,重点看下括号,逗号和分号,要用英文的,还有不能漏掉

    2018-07-21 18:15:03

    共 1 条回复 >

  • 慕先生5247145
    2018-07-20 17:19:54

    change不是chenge.....

    我强迫症。。。。 =。=

  • 手刻CPU
    2018-07-20 13:18:42

        function cancel(){

            var a=confirm("是否取消设置?");

            if(a==true){

                text.style="none";

            }

            else{

            document.write("为什么?");

            }

        }

    最后取消设置哪里我忽略了要弹出确认,所以才那样写。。。

    谢谢各位提醒,改为上面这样。

    我的本意为问是不是最简化的代码,不意被各位大哥发现了疏漏,先谢过

    舊夢

    其实java里面不是写的越简单效率越高, 就像javase中用import时, 我们往往单独写出导入的多个类, 而不是写java.lang.*这样全部导入, 因为在运行时*代表全部子类, 会导入过多无用的类造成效率的低下,,, 所以你不用这么担心代码多, 就像你写text.style="none"; 实际运行效率比(单独恢复可能改变的值为默认值)的效率要低,, 所以不存在最简一说,,, 编程中更关注效率问题。。。 特别提醒一下。。。。

    2018-07-20 22:04:38

    共 1 条回复 >

  • qq_灯小芯_0
    2018-07-19 20:29:49

    楼上说得对

    function cancel(){

    var message = confirm("确认重置操作么?")


    if(message){

    text.style="none";

    }

    }

    我觉得这样也可以

  • 努力学习的好孩子
    2018-07-19 15:45:34

    24行  if(confirm("要取消设置吗"))

  • 舊夢
    2018-07-19 14:20:34

    ....嘛,,,没人吗,,,,,,,,其实就24行有问题,,,要不就声明var cancel=confirm("是否取消设置?");要不直接把括号里的改为if(confiem("是否取消设置?"))

    手刻CPU 回复qq_Ete...

    confirm打错了

    2018-07-21 08:42:27

    共 3 条回复 >

  • 舊夢
    2018-07-19 13:48:30

    你是认真的吗?

    .......我扫一眼就看到24行的错误了,,,,,,,,,,(注:java中判断相等时用==,赋值用=)

JavaScript入门篇

JavaScript做为一名Web工程师的必备技术,本教程让您快速入门

739817 学习 · 9566 问题

查看课程

相似问题