关于document.write("p1元素的属性值为:"+p1.className);为什么不显示属性值,请问错在哪里?

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

慕后端6566198

2017-12-20 17:22

<!DOCTYPE HTML>

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<title>className属性</title>

<style>

    body{ font-size:16px;}

    .one{

border:1px solid #eee;

width:230px;

height:50px;

background:#ccc;

color:red;

}

    .two{

border:1px solid #eee;

width:230px;

height:50px;

background:#ccc;

color:green;

</style>

</head>

<body>

    <p id="p1" > JavaScript使网页显示动态效果并实现与用户交互功能。</p>

    <input type="button" value="添加样式" onclick="add()"/>

    <br> 

    

<script type="text/javascript">

var p1 = document.getElementById("p1");

document.write("p1元素的属性值为:"+p1.className);

  function add()

  {

     p1.className="two";

  }

</script> 

</body>

</html>


写回答 关注

4回答

  • qq_神眷羽晶田_0
    2018-01-22 16:41:18

    你的<p>标签中有id=p1,没有class="one"/"two",所以题目中才有

    p1.className="one";

  • 慕斯慕斯
    2017-12-21 22:56:07

    1、这是因为javascript执行有顺序的,你执行document.write的时候,还没有点击button,<p>并没有添加属性,所以不显示。我是这样想的。你可以试一下,在function中,再加入document.write("p1元素的属性值为:"+p1.className); 这个时候就有值了

    2、你第二个class 结尾少一个“}”,虽然不知道为啥,效果还是能出来 0.0

    慕斯慕斯

    我也是个萌新,希望我的回答能够帮到你一些吧

    2017-12-21 22:56:56

    共 1 条回复 >

  • Magic_sky
    2017-12-20 18:03:17

    你的<p>的id没有class

  • 慕仙9188615
    2017-12-20 17:58:17

    P 标签没有clss="p1";

JavaScript入门篇

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

738661 学习 · 9561 问题

查看课程

相似问题