本文介绍: 这篇涉及到HTML DOM的节点类型节点层级关系、DOM对象继承关系操作DOM节点和HTML元素用到HTML5的本地存储技术。换肤效果原理:是在选择某种皮肤样式之后,通过JavaScript脚本加载选中样式,再通过localStorage存储。先来回忆一下HTML DOM的相关知识

这篇涉及到HTML DOM的节点类型节点层级关系、DOM对象继承关系操作DOM节点和HTML元素

用到HTML5的本地存储技术

换肤效果原理:是在选择某种皮肤样式之后,通过JavaScript脚本加载选中样式,再通过localStorage存储

先来回忆一下HTML DOM的相关知识

DOM

DOM模型就是通过逻辑树来表示文档,树的每一个分支的终点都是一个节点Node,每一个节点都含有一个对象

DOM的方法可以用来改变文档结构样式内容,还可以关联事件处理器,在某一个事件触发后,所关联事件处理器也会执行

HTML文档中所有的内容都是节点,整个文档就是文档节点【也就是我们常说的document】;

在整个HTML文档中,根据不同功能划分可以分为元素节点、文本节点、属性节点、注释节点等等。常见的节点类型如下图所示

在这里插入图片描述

操作节点

操作节点之前,我们获取节点,然后追加新增删除替换复制合并节点等等交互

在文档中,我们是通过节点来操作文档中的元素,得到的返回值是节点集合

我们用来获取节点的属性,如下图
在这里插入图片描述
用来追加新增节点的方法如下

Node.appendChild(childNode);
Node.insertBefore(newNode,referenceNode)

删除和替换节点的方法

Node.removeChild()
Node.replaceChild()

复制、合并节点:

Node.cloneNode(); // 参数true/false是否复制节点所有内容
Node.normalize(); // 合并相邻的文本节点并且清除空的文本节

节点引用包含关系判断

Node.isSameNode(other); // 比较两个节点
Node.hasChildNodes(); // 是否包含子节点

documentelement

document是描述了任何类型文档的通用属性方法,它的构造函数是Document();

所有Document对象下的对象都继承于ELement。ELement描述所有相同种的元素普遍具有方法属性

document对象中获取元素的常用属性:

  1. document.all,返回整个 document 文档集合
  2. document.anchors返回文档中所有锚点元素,是一个 List
  3. document.body返回当前文档的 body 或者 frameset 节点
  4. document.documentElement,返回当前文档的直接节点
  5. document.forms返回当前文档的所有表单元素
  6. document.head返回文档的 head 元素
  7. document.images,返回文档的所有图片元素
  8. document.links,返回所有超链接列表
  9. document.scripts,返回所有的 script 元素
  10. document.styleSheetSets,返回文档中可用样式表的列表
  11. document.defaultView,返回 window 对象的应用
  12. document.title获取当前文档的标题

document对象中获取元素的常用方法:

  1. document.getElementsByClassName(names),返回指定所有类名的元素
  2. document.getElementsByTagName(name),
  3. document.getElementByld(id)
  4. document.querySelector(selectors)
  5. document.query SelectorAll(selectors)
  6. document.getElementsByName(name)

document对象中创建元素的常用方法

  1. document.createAttribute(name)
  2. document.createComment(data)
  3. document.createDocumentFragment)
  4. document.createElement(tagName[,options])
  5. document.create TextNode(data)

document对象中向文档中写入内容的方法

  1. document. write(markup)
  2. document.writeln(line)

Element对象中获取元素的常用方法

  1. Element.getElementsByClassName(names)
  2. Element.getElementsByTagName(name)
  3. Element.querySelector(selectors)
  4. Element.querySelectorAll(selectors)

Element对象的属性及其操作元素属性的方法:

  1. Element.classList
  2. Element.className
  3. Element.id
  4. Element.innerHTM
  5. Element.outerHTML
  6. Element.tagName
  7. Element.children
  8. Element.getAttribute (attr)
  9. Element.getAttributeNode(attr)
  10. Element.removeAttribute(attr)
  11. Element.removeAttributeNode(attrNode)
  12. Element.setAttribute(name,value)
  13. Element.setAttributeNode(attr)
  14. Element.toggleAttribute(name [,force])

Element对象中插入节点的常用方法:

  1. Element.insertAdjacentElement(pos,ele)
  2. Element.insertAdjacentHTML(pos,text)
  3. Element.insertAdjacentText(pos,ele)

原文地址:https://blog.csdn.net/xuelian3015/article/details/134130959

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任

如若转载,请注明出处:http://www.7code.cn/show_27776.html

如若内容造成侵权/违法违规/事实不符,请联系代码007邮箱suwngjj01@126.com进行投诉反馈,一经查实,立即删除

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注