关于innerHTML的问题

来源:3-3 innerHTML 属性

山楂片大王

2017-01-28 21:59

document.write(mychar)和document.write(mychar.innerHTML)有什么区别呢?这两个不是都可以显示么?

写回答 关注

3回答

  • 不知不觉后知后觉嗯
    2017-02-12 19:49:37

    首先。这个任务中的变量mychar代表h2元素,因为任务中:var mychar=document.getElementById("con"); document.getElementById()取出来的是元素,即h2元素。

    所以document.write(mychar)表示输出元素,会显示出[object HTMLHeadingElement],意思是对象的html的标题元素。

    document.write(mychar.innerHTML)表示将元素的内容以html语言显示出来,<h2 id="con">javascript</h2>以html语言的形式显示会得到javascript。

    1-7中的变量mychar代表字符串"javascript",所以document.write(mychar,)输出的就是javascript,而这个任务中的mychar代表h2元素,mychar在两个任务中所指代的对象不同。

  • 山楂片大王
    2017-01-29 22:10:51

    可是在1-7课程中有这样的代码,就可以正常显示

    <!DOCTYPE HTML>

    <html>

    <head>

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

    <title>变量</title>

    <script type="text/javascript">

     

     var mychar;

    mychar="javascript";

    var mynum = 6;

    document.write(mychar,mynum);

    </script>

    </head>

    <body>

    </body>

    </html>

    这个是因为什么呢?谢谢啦~

    虚心222

    这里的mychar仅仅是个变量

    2017-01-29 22:14:36

    共 1 条回复 >

  • 虚心222
    2017-01-29 00:56:27

    mychar是选中标签的对象,mychar.innerHTML为对象的文本值eg.   <p>你是谁?</p> document.write(mychar);会的到[object HTMLParagraphElement];document.write(mychar.innerHTML)会得到“你是谁?”. 

    山楂片大王

    可是在1-7课程中有这样的代码,就可以正常显示 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>变量</title> <script type="text/javascript"> var mychar; mychar="javascript"; var mynum = 6; document.write(mychar,mynum); </script> 这个是因为什么呢?谢谢啦~

    2017-01-29 22:11:49

    共 1 条回复 >

JavaScript入门篇

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

739817 学习 · 9566 问题

查看课程

相似问题