为什么将代码的nodeValue改为innerHTML不行?

来源:9-10 访问父节点parentNode

长缨在手1

2017-02-15 14:20

 document.write(mylist.parentNode.parentNode.parentNode.childNodes[7].firstChild.nodeValue);输出HTML/CSS3

写回答 关注

2回答

  • KD_35
    2017-03-26 21:10:39

      

      (1)childNodes属性

           childNodes数属性可以获取某一个元素节点的所有字节点,这些字节点包括元素字节点和文本子节点。它返回的

    也是一个字节点对象数组,我们使用childNodes[n]返回子节点对象。同时我们可以使用节点属性中的nodeValue属性

    对其文本节点进行赋值。

           在这里我们要注意:

           1)获取的文本子节点无法使用innerHTML这个属性输出文本内容,因为这个是非W3C标准的属性必须在获取元素

    节点的时候,才能输出里面包含的文本,然而元素节点可以使用innerHTML属性和nodeValue属性。

           2)当我们操作元素节点赋值时,nodeValue属性会把包含在文本里的HTML转义成特殊字符,从而达到单纯文本的

    效果,而innerHTML属性去可以解析HTML,输出解析后的HTML文档。

    ——我也是不理解这个,百度到的

  • 慕用9569488
    2017-02-15 15:59:13

    innerHTML输入/出的该DOM的内部纯HTML代码(流)
    value(innerText) 输入/出的是转义的文本(字符串)

    慕田峪601...

    那为什么第一个评论里innerHTML输出的却是文字,标签代码什么的却没有输出?

    2017-02-26 18:01:14

    共 2 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题