美文网首页
DOM 2. 节点操作

DOM 2. 节点操作

作者: goodcwj | 来源:发表于2020-03-28 23:44 被阅读0次

为什么学节点操作

  1. 利用DOM提供的方法获取元素
  • document.getElementById()
  • document.getElementByTagName()
  • document.querySelector等
  • 逻辑性不强,繁琐
  1. 利用节点层级关系获取元素
  • 利用父子兄节点关系获取元素
  • 逻辑性强,但兼容性稍差

节点概述

一般地,节点至少拥有nodeType, nodeName 和nodeValue这三个基本属性

  • 元素节点 nodeType为1
  • 属性节点 nodeType为2
  • 文本节点 nodeType为3(文本节点包含文字、空格、换行等)

节点层级

  1. 父级节点
    parentNode
  • parentNode属性可返回某节点的父节点,注意是最近的一个父节点
  • 如果指定的节点没有父节点则返回null
  1. 子节点
  • parentNode.childNodes

注意这个是包含文本节点的,包括文本节点

  • parentNode.children(非标准)

获取所有的子元素节点,也是我们实际开发常用的

  1. parentNode.children[0] 获取第一个元素
  2. parementNode.children[parentNode.children.length -1] 获取最后一个元素
  3. parentNode.firstElementChild, parmentNode.lastElementChild挺好用,但是IE9以上才支持
  4. parentNode.lastChild, parentNode.firstChild返回的是包括文本节点的children,很可能包含的不是我们想要的element
  1. 兄弟节点
  • node.nextElementSibling
  • node.previousElementSibling
  1. 创建节点, 添加节点
document.createElement('li');
node.appendChild(child); //后面追加元素
node.insertBefore(child, 指定元素); //指定元素前面加元素
  1. 删除节点
    node.removeChild(’元素‘);
  2. 复制节点
node.cloneNode();
  1. innerHTML vs createElement
  • innerHTML创建多个元素效率更高(不要拼接字符串,采取数组形式拼接), 结构稍微复杂
  • createElement()创建多个元素效率低一点点,但是结构更清晰

相关文章

  • DOM 2. 节点操作

    为什么学节点操作 利用DOM提供的方法获取元素 document.getElementById() documen...

  • 18.DOM 基础

    学习要点: 1.DOM 介绍2.查找元素3.DOM 节点4.节点操作 DOM(Document Object Mo...

  • DOM (javascript DOM节点操作)

    DOM (javascript DOM节点操作) 本节目录 查找DOM元素 DOM节点操作 javascript操...

  • js高级程序设计笔记15

    DOM 1.Node 确定Node节点的类型 2.节点关系 3.操作节点 insertBefore() appen...

  • JavaScript基础(5)-(节点的操作)

    1.元素节点操作: 2.访问元素节点: 3.DOM操作 4.节点属性的设置; 调用者:元素本身 返回...

  • Dom操作

    操作节点 获取节点 获取子节点 更新DOM innerHTMLinnerTEXT 插入DOM appendChil...

  • 05-DOM相关知识点讲解

    DOM DOM内容主要分为四部分: 什么是DOM和节点; 获取节点; 节点操作(3种); 属性操作(3种)。 什么...

  • JQuery---dom相关节点操作

    dom相关节点操作 /* DOM操作管理 属性...

  • 第十七章 DOM基础

    要点: DOM介绍 查找元素 DOM节点 节点操作 什么是 DOM? DOM即文档对象,针对HTML和XML文档的...

  • Vue解决了哪些问题

    虚拟 dom:dom 操作时非常耗性能的,不再使用原生的 dom 操作节点,极大的解放 dom 操作,但具体操作的...

网友评论

      本文标题:DOM 2. 节点操作

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