问答详情
源自:4-1 编程挑战

当有取消设置函数(function quxiao)时,所有按钮都无效,消除这个函数,其他按钮有效了。求问大神们到底什么地方有问题?是我if函数模式写错了吗

<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" Content="text/html; charset=utf-8" />
<title>javascript</title>
<style type="text/css">
body{font-size:12px;}
#txt{
    height:400px;
    width:600px;
 border:#333 solid 1px;
 padding:5px;}
p{
 line-height:18px;
 text-indent:2em;}
 
</style>
</head>
<body>
  <h2 id="con">JavaScript课程</H2>
  <div id="txt"> 
     <h5>JavaScript为网页添加动态效果并实现与用户交互的功能。</h5>
        <p>1. JavaScript入门篇,让不懂JS的你,快速了解JS。</p>
        <p>2. JavaScript进阶篇,让你掌握JS的基础语法、函数、数组、事件、内置对象、BOM浏览器、DOM操作。</p>
        <p>3. 学完以上两门基础课后,在深入学习JavaScript的变量作用域、事件、对象、运动、cookie、正则表达式、ajax等课程。</p>
  </div>
  <form>
  <!--当点击相应按钮,执行相应操作,为按钮添加相应事件-->
    <input type="button" value="改变颜色" onclick="yanse()">  
    <input type="button" value="改变宽高" onclick="kuangao()">
    <input type="button" value="隐藏内容" onclick="yincang()">
    <input type="button" value="显示内容" onclick="xianshi()">
    <input type="button" value="取消设置" onclick="quxiao()">
  </form>
  <script type="text/javascript">
  function yanse(){ var add=document.getElementById("txt");
      add.style.color="red";
      add.style.background="green";
  }//定义"改变颜色"的函数  function kuangao(){ var add=document.getElementById("txt").style.width="800px";      add.style.height="500px";  }//定义"改变宽高"的函数   function yincang(){ var add=document.getElementById("txt");   add.style.display="none";}//定义"隐藏内容"的函数  function xianshi(){ var add=document.getElementById("txt");  add.style.display="block";}//定义"显示内容"的函数 function quxiao(){ var add1=confirm("是否取消所有设置");  if(add1==true){     var add1=document.getElementById("txt") ; add1.style.background="wihte";  add1.style.color="red";  }else{ alert("好的")} }//定义"取消设置"的函数  </script></body></html>

提问者:慕先生3265212 2019-09-02 17:44

个回答

  • JohnLone
    2019-09-03 22:29:58

    function cancle(){

        var i=confirm("是否取消操作");

        if(i==true){

           var mychar=document.getElementById("txt");

           mychar.style.cssText="txt";

        }

    }

    这是取消操作意思是重新给他原来的样式表把你之前的改动全部覆盖掉,你写的代码应该存在变量作用域的问题吧,具体我也不太清楚刚接触,不过按其他其他语言应改不能直接用width把?再说了width没说是个变量啊

  • 慕用9169840
    2019-09-03 11:09:32

    你都没有把所有的值给清掉,当按了取消键后,之前所有的设置都变为”“;比如add1.style.background="";这样背景色就不会有了。另外你else后面也写错了,应该是null