美文网首页
JavaScript中的DOM

JavaScript中的DOM

作者: 沧澈 | 来源:发表于2020-12-07 09:17 被阅读0次

    DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口)

    1. Node类型

    NodeType Named Constant
    1 ELEMENT_NODE
    2 ATTRIBUTE_NODE
    3 TEXT_NODE
    4 CDATA_SECTION_NODE
    5 ENTITY_REFERENCE_NODE
    6 ENTITY_NODE
    7 PROCESSING_INSTRUCTION_NODE
    8 COMMENT_NODE
    9 DOCUMENT_NODE
    10 DOCUMENT_TYPE_NODE
    11 DOCUMENT_FRAGMENT_NODE
    12 NOTATION_NODE

    2.节点层次

    • nodeName和nodeValue属性

    要了解节点的具体信息,可以使用nodeName和nodeValue这两个属性。这两个属性的值完全取决于节点的类型。在使用这两个值以前,最好是像下面这样先检测一下节点的类型。

    • 节点关系

    每个节点都有一个childNodes属性,其中保存着一个NodeList对象。NodeList是一种类数组对象,用于保存一组有序的节点,可以通过位置来访问这些节点。
    注意:虽然可以通过方括号语法来访问NodeList的值,而且这个对象也有length属性,但它并不是Array的实例

     firstChild()  // 获取父节点第一个子节点 
    
     lastChild()  // 获取父节点最后一个子节点 
    
    hasChildNodes() // 是否含有子节点 ,包含一或多个子节点的情况下返回true
    
    • 操作节点

    1.appendChild():用于向childNodes列表的末尾添加一个节点并返回新增的节点。

    2.insertBefore():这个方法接受两个参数:要插入的节点和作为参照的节点

    3.replaceChild():接受的两个参数是:要插入的节点和要替换的节点。要替换的节点将由这个方法返回并从文档树中被移除,同时由要插入的节点占据其位置。

    4.removeChild():接受一个参数,即要移除的节点,被移除的节点将成为方法的返回值。

    要使用这几个方法必须先取得父节点(使用parentNode属性),另外,并不是所有类型的节点都有子节点,如果在不支持子节点的节点上调用了这些方法,将会导致错误发生

    有两个方法是所有类型的节点都有的:
    5.cloneNode():用于创建调用这个方法的节点的一个完全相同的副本。
    接受一个布尔值参数,表示是否执行深复制

    • 在参数为true的情况下,执行深复制,也就是复制节点及其整个子节点树
    • 在参数为false的情况下,执行浅复制,即只复制节点本身。

    6.normalize():这个方法唯一的作用就是处理文档树中的文本节点

    来源:《JJavaScript高级程序设计》

    相关文章

      网友评论

          本文标题:JavaScript中的DOM

          本文链接:https://www.haomeiwen.com/subject/xftgwktx.html