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

点击所有按钮都没反应

  <!--当点击相应按钮,执行相应操作,为按钮添加相应事件-->

    <input type="button" value="改变颜色" onclick="changeColor()" >  

    <input type="button" value="改变宽高" onclick="changeWH()">

    <input type="button" value="隐藏内容" onclick="txtHide()">

    <input type="button" value="显示内容" onclick="txtOn()">

    <input type="button" value="取消设置" onclick="cancel()">

  </form>

  <script type="text/javascript">

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

//定义"改变颜色"的函数

function chageColor()

{

    obj.style.color="red";

}


//定义"改变宽高"的函数

function changeWH()

{

    obj.style.height="300px";

    obj.style.width="500px";

}

//定义"隐藏内容"的函数

function txtHide()

{

    obj.style.display="none";

}


//定义"显示内容"的函数

function txtOn()

{

    obj.style.display="block";

}


//定义"取消设置"的函数

funtion cancel()

{

    if(confirm("是否取消所有设置"))

    obj.className=txt;

}



  </script>

</body>

</html>


提问者:qq_风流毛哥_03960674 2018-08-04 10:18

个回答

  • 跟我一起读_biang
    2018-08-17 20:57:37

    首先你的changeColor()函数拼错了,少个n,其次你的cancel函数前面的function也拼错了,少个c。

    然后所有按钮都点不动的话是因为在script代码块中写进了中文格式的符号。

    最后cancel()要实现恢复初始样式的话网上搜索到两种方法

    1:obj.removeAttribte("style");

    2:  txt.style.cssText="";

    至于你写的方法,我想你的初衷是将obj的样式设置为style中写好的“#txt”这一样式 ,如果这个样式名叫“.txt”,那就可以使用装载类名的方法(obj.className="txt";你的没有加双引号),但是”#txt"是和id叫txt的元素绑定的初始样式 ,它们是一体的,后期对txt元素样式的修改就是对#txt的修改,所以你的cancel做的工作就是把当前样式设置为当前样式 ,所以是完全不起作用的;                                                                                          

  • zihao1123
    2018-08-07 23:15:40

    --------------------------------
    
    obj. 需要赋值才可以被使用
    
    --------------------------------
    
    例://定义"改变颜色"的函数
        function chageColor()
        {
        obj.style.color="red";
        }
        
    --------------------------------
    
    需要先给obj赋值调用:
    
    定义:
    var add1 = document.getElementById("txt");    //"txt" 为标签的ID
    
    再使用:
     add1.style.color="red";     //add1 被赋予了ID为"txt"的值
     
    ---------------------------------


  • 慕仰2279473
    2018-08-04 16:33:58

    因为你的obj对象没有赋值,

    比如:

    var obj = document.getElementById("con");

    obj.style.color="blue";

    你这样试试

    上面的con指的是标签的id

    如:

    <p id="con"></p>