使用JavaScript操作DOM

1.DOM操作

  DOM是Document Object Model的缩写,即文档对象模型,是基于文档编程的一套API接口。

  使用JavaScript操作DOM时分为三个方面:

  1.1:DOM Core(核心): 针对任何结构化文档的标准模型

  1.2:HTML-DOM:针对 HTML 文档的标准模型

  1.3:XML DOM - 针对 XML 文档的标准模型

2.节点和节点关系

  • 整个文档是一个文档节点
  • 每个HTML标签是一个元素节点
  • 包含在HTML元素中的文本是文本节点
  • 每个HTML属性是一个属性节点
  • 注释属于注释节点

3.访问节点

  3.1使用getElement系列方法访问指定节点

  • getElementById():返回按id属性查找的第一个对象的引用
  • getElementByName():返回带有指定名称name查找的对象的集合,由于一个文档中可能会有多个同名节点,因此返回的是元素数组
  • getElementByTagName():返回带有指定标签名称TagName查找的对象的集合,返回元素数组

  3.2根据层次关系访问节点

  • parentNode:                            返回节点的父节点
  • childNodes:             返回子节点集合,childNodes[i]
  • firstChild:                                返回节点的第一个子节点
  • lastChild:                           返回节点的最后一个子节点
  • nextSibling:                  下一个节点
  • previousSibing:                       上一个节点

  3.3解决浏览器兼容问题:
  firstElementChild 返回节点的第一个子节点,最普遍的用法是访问该元素的文本节点
  lastElementChild 返回节点的最后一个子节点
  nextElementSibling 下一个节点
  previousElementSibling 上一个节点

  例如:oNext = 节点.nextElementSibling || 节点.nextSibling

4.节点信息

   常用属性:

  • nodeName(节点名称)
  • nodeValue(节点值)
  • nodeType(节点类型)

   操作节点的属性

  • getAttribute("属性名"):用来获取属性的值
  • setAttribute("属性名","属性值"):用来设置属性的值  

   创建和插入节点:

  • createElement( tagName) 创建一个标签名为tagName的新元素节点
  • A.appendChild( B) 把B节点追加至A节点的末尾
  • insertBefore( A,B ) 把A节点插入到B节点之前
  • cloneNode(deep) 复制某个指定的节点

  删除和替换节点:

  • removeChild( node) 删除指定的节点
  • replaceChild( newNode, oldNode)属性attr 用其他的节点替换指定的节点

  

 

原文地址:https://www.cnblogs.com/yjc1605961523/p/10979605.html