为什么点击按钮后的“p元素class值为:one",点击后不是变成"two"了吗

来源:3-6 控制类名(className 属性)

慕粉3578716

2016-07-08 15:41

就是左侧教程里的例子,p的class默认是''one",点击按钮后p的class变成"two",那么输出时”p元素class值为:one",为什么还是one?不应该是two吗?

<style type="text/css">

    .one {width: 200px; background-color:#ccc;}

.two {font-size: 18px; color: #f00;}

</style>

<p class="one" id="con">p文字更改</p>

<input type="button" onClick="modclass()" value="click">

<script type="text/javascript">

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

   document.write("P元素class值为:"+mychar.className+"<br>");

   function modclass()

   {

  mychar.className="two";

   }

</script>


写回答 关注

4回答

  • 幕布斯9040583
    2016-07-10 21:42:32
    已采纳

    代码执行顺序而已,在更改样式后边加上输出的话就可以了,但是之前的输出都会被替换掉


    gibson

    望详解,谢谢

    2016-07-30 16:40:38

    共 2 条回复 >

  • qq_乐天c_0
    2016-07-08 22:29:43

    var mychar  是获取object HTMLParagraphElement对象,改变的是mychar的ClassName,但是p的没有改变。我是这样理解的。

  • qq_忆往昔匆匆流年_03604588
    2016-07-08 16:39:31

    因为是先写出,后才修改class名字,你可以将  document.write("P元素class值为:"+mychar.className+"<br>");复制在 mychar.className="two";后面,就会发现写出的是two了

    慕粉3578...

    我开始也以为是顺序的问题,可放在后面还是不行,你试了吗?可以吗?

    2016-07-08 17:29:27

    共 1 条回复 >

  • 笔端之韵
    2016-07-08 16:01:36

    onclick  写成了 onClick

JavaScript入门篇

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

739817 学习 · 9566 问题

查看课程

相似问题