为什么运行不起来啊

来源:4-1 编程挑战

随想录

2015-11-17 16:39

不知道哪里出问题..

写回答 关注

3回答

  • Perona
    2015-11-17 16:52:49
    已采纳
    var col=document.ElementById("con");

    是getElementById,不是ElementById

    变量col为何重复赋值,第一次是获取节点,第二次居然用来存对话框的返回值,建议分别用不同的变量来存值。重置不了是因为col后来存的值是对话框的返回值,不是节点。

    修改后的部分代码你参考下

    function co(){
        var col=document.getElementById("con");
        var co=confirm("确定更改吗");
        if(co==true){
            col.style.color="red";
            col.style.backgroundColor="#ccc";
        }
        else{
            alert("谢谢!")
        }
    }



    随想录

    非常感谢!

    2015-11-17 17:50:27

    共 1 条回复 >

  • 李晓健
    2015-11-17 17:35:27
    function co(){
        var col=document.getElementById("con");
        var col2=confirm("确定更改吗");
        if(col2==true){
            col.style.color="red";
            col.style.backgroundColor="#ccc";
        }
        else{
            alert("谢谢!")
        }
    }

    看下第4行 和第5行   你不能两次定义变量用同一个名字,这样第二个把把第一个覆盖,con就不是你通过id找到的那个节点了,就变成了true 或 false  你后面改颜色的代码自然就无效了。

  • 随想录
    2015-11-17 16:53:13

    哦  getElementById()写错了,但是,改了之后有弹窗了,颜色还是没变...

    Perona

    不要给同一个变量重复赋值。变量col为何重复赋值,第一次是获取节点,第二次居然用来存对话框的返回值,建议分别用不同的变量来存值。重置不了是因为col后来存的值是对话框的返回值,不是节点。参考我给你的代码。

    2015-11-17 17:37:20

    共 1 条回复 >

JavaScript入门篇

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

739816 学习 · 9566 问题

查看课程

相似问题