问答详情
源自:3-6 控制类名(className 属性)

样式改变了,但mychar.className输出还是one,没有变化!触发onclick事件后不是应该输出的是two了嘛!

<style>
        .one{
            color: #000;
        }
        .two{
            color: red;
        }
    </style>
</head>
<body>
<p id="con" class="one">这是一个p标签</p>
<form action="">
    <input type="button" value="点击更改" onclick="monifyclass()">
</form>

<script>
    var mychar=document.getElementById("con");
    document.write("p元素的class值为"+mychar.className+"<br>");
    function monifyclass(){
        mychar.className="two";
    }
    console.log(mychar.className);

</script>


提问者:简单简同学 2018-07-20 09:21

个回答

  • WilliamZhai
    2018-07-20 10:09:33
    已采纳

    console.log(mychar.className)是即使没有鼠标点击响应事件也会执行的,估计就是因为鼠标点击了此函数也没有相应的更新

    你可以在function monifyclass()函数定义里加一句console.log(mychar.className),随着鼠标点击响应此函数后,就会有期待的结果了。

  • 深圳马录
    2018-08-18 19:47:57

    html是结构,相当于骨架;

    css是样式;美化页面格式的;

    js是交互;丰富页面内容的!

  • 慕函数4340470
    2018-07-23 10:53:54


    那把 console.log(myChar.className); 放到 function()里面

  • 慕函数4340470
    2018-07-22 20:54:58

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

    这句应该放到 function ()里面


  • 练习时长两年半的前端实习生
    2018-07-22 17:13:56

    还没学到console.log ,我是老实按照基础的方法进行的

  • WilliamZhai
    2018-07-20 10:09:35

    console.log(mychar.className)是即使没有鼠标点击响应事件也会执行的,估计就是因为鼠标点击了此函数也没有相应的更新

    你可以在function monifyclass()函数定义里加一句console.log(mychar.className),随着鼠标点击响应此函数后,就会有期待的结果了。