归纳一下,

不管是DOM Core还是HTML-DOM,我们在使用JavaScript的时候要注意浏览器之间的兼容性,因为不同的浏览器对这两类方法和属性的支持可能不一样,一般推荐使用DOM Core方法和属性,尽管稍显繁杂。

常见的Core DOM方法如下:

1、创建节点

createElement()

createTextNode()

2、复制节点

cloneNode()

3、插入节点

appendChild()

insertBefore()

4、删除节点

removeChild()

5、替换节点

replaceChild()

6、查找和设置节点属性

setAttribute()

getAttribute()

7、查找节点

getElementById()

getElementsByTagName()

hasChildNode()

常见的Core DOM属性如下:

node.childNodes

node.firstChild

node.lastChild

node.nextSibling

node.previousSibling

node.parentNode

总结/回顾:

DOM 基本方法

直接引用方法:

1、documen.getElementById(id);

2、document.getElementByTagName(tagName);

返回一个数组,包含对这些节点的引用

间接引用节点

3、子节点element.childNode

返回element的所有子节点,通过element.childNodes[i]的方式来调用

Element.firstChild = element.childNodes[0];

Element.lastChild = element.childNodes[element.childNodes.length-1];

4、父节点element.parentNode

5、下一个兄弟节点element.nextSibling;

上一个兄弟节点element.previousSibling;

获得节点信息

6、nodeName属性获得节点名称eg:<a></a>返回”a”; class=”test”返回”test”; 文本节点返回文本内容。

7、nodeType返回节点的类型。元素节点返回1;属性节点返回2;文本节点返回3;

8、nodeValue返回节点的值。元素节点返回null;属性节点返回undefined;文本节点返回文本内容。

9、hasChildNodes()返回布尔值,判断是否含有子节点。

10、tagName属性返回元素的标记名称。等价于nodeName属性

处理属性节点

11、用setAttributeNode()方法给元素节点添加属性。

ElementNode.setAttribute(attributeName,attributeValue); 参数分别为(属性名称,属性值)

12、用getAttribute()方法获得属性值

处理文本节点

13、innerHTML和innerText方法

改变文档的层次结构

14、创建元素节点document.createElement()

15、创建文本节点Document.createTextNode();

//注: document.createTextNode(" ");他不会通过html编码,也就是说这里创建的不是空格,而是字符串

16、添加子节点 appendChild()。parentElement.appendChild(childElement);

17、插入子节点insertBefore()。

appendChild、insertBefore和insertAfter(自定义函数) 的区别

18、使用replaceChild方法取代子结点。parentNode.replaceChild(newNode,oldNode);

19、使用cloneNode方法复制结点 。node.cloneNode(includeChildren); includeChildren为bool,表示是否复制其子结点 。

20、使用removeChild方法删除子结点 。parentNode.removeChild(childNode);

DOM相关的更多相关文章

  1. Jsoup代码解读之二-DOM相关对象

    Jsoup代码解读之二-DOM相关对象   之前在文章中说到,Jsoup使用了一套自己的DOM对象体系,和Java XML API互不兼容.这样做的好处是从XML的API里解脱出来,使得代码精炼了很多 ...

  2. DOM相关知识点

    内容待补充... DOM相关注意题目: DOM的最小组成单位叫做 //节点 Node DOM 有自己的国际标准,目前的通用版本是 //DOM 3 DOM 树的根节点 //HTML 元素 Element ...

  3. DOM相关知识总结

    DOM相关: 1.获取DOM元素 document.getElementById document.getElementsByName document.getElementsByTagName do ...

  4. Jquery第二篇【选择器、DOM相关API、事件API】

    前言 前面已经介绍过了Jquery这门语言,其实就是一个javaScript的库-能够简化我们书写的代码-.本博文主要讲解使用Jquery定位HTML控件[定位控件就是获取HTML的标签],使用Jqu ...

  5. DOM相关操作的案例

    1 . 模态框案例 示例 :  打开网页时有一个普通的按钮,点击当前按钮显示一个背景图,中心并弹出一个弹出框,点击X的时候会关闭当前的模态框 <!DOCTYPE html> <htm ...

  6. JavaScript - DOM相关

    DOM节点分类 ( node ) : 元素节点 ( element node ) 属性节点 ( attribute node ) 文本节点 ( text node) DOM的相关操作 : 1. 查询元 ...

  7. DOM及DOM相关操作

    DOM 概述: DOM 全称(document object model)文档对象模型(文档指定为对应html文档),对应的DOM就是操作HTML文档的(增删改查) DOM结构 document 文档 ...

  8. DOM相关属性,方法,兼容性问题处理小析

    DOM:Document Object Model文档对象模型,用于让程序(js)取操作页面中的元素.DOM节点类型有12种. (一)属性 一.子节点操作1.所有子节点(1)元素.childNodes ...

  9. DOM相关知识点以及原型

    DOM(增删改查): 查询 1.获取元素 1.1标准DOM API document.getElementById document.getElementsByTagName document.get ...

  10. dom相关指令

    1.ng-show  和 ng-hide 当ng-show=''true''的时候 dom会显示,反之隐藏,通过控制display属性 2.ng-if 当ng-if=“true” 的时候,dom显示, ...

随机推荐

  1. C语言Socket-模拟远程CMD(客户端向服务器发送命令,服务器执行该命令)

    服务端(server) #include <stdio.h> #include <winsock2.h> #pragma comment(lib,"ws2_32.li ...

  2. FunDA(17)- 示范:异常处理与事后处理 - Exceptions handling and Finalizers

    作为一个能安全运行的工具库,为了保证占用资源的安全性,对异常处理(exception handling)和事后处理(final clean-up)的支持是不可或缺的.FunDA的数据流FDAPipeL ...

  3. .net core Error -4090 EADDRNOTAVAIL address not available”

    问题原因:IP地址错误或者网络未开

  4. 关于axios及其在vue中的配置

    什么是axios?官方解释:axios 是一个基于 promise 的 HTTP 库,可以用在浏览器和 node.js 中. 具有以下特点: 从浏览器中创建 XMLHttpRequests 从 nod ...

  5. java项目配置域名(tomcat直接配置 or 使用nginx反向代理)

    一:  tomcat直接配置域名:https://blog.csdn.net/qq_36330228/article/details/78516160 二: 使用nginx进行反向代理 tomcat服 ...

  6. WebRTC开发基础(WebRTC入门系列1:getUserMedia)

    什么是WebRTC WebRTC由IETF(Internet Engineering Task Force——互联网工程任务组)和W3C(World Wide Web Consortium——万维网联 ...

  7. 在MySQL Workbench查看表,表结构,索引,函数,存储过程,触发器,重连

    表 表结构 索引 触发器 存储过程 函数 重新连接 出现Error Code: 2006 MySQL server has gone away时

  8. 《Python编程从入门到实践》--- 学习过程笔记(3)列表

    一.用[](方括号)表示列表,用,(逗号)分隔其中的元素. >>> name=['limei', 'hanmeimei', 'xiaoming'] >>> prin ...

  9. 用开源 ASP.NET MVC 程序 Bonobo Git Server 搭建 Git 服务器(转)

    用开源 ASP.NET MVC 程序 Bonobo Git Server 搭建 Git 服务器   现在不用Git,都不好意思说自己是程序员. 当你想用Git,而源代码服务器是Windows系统时,你 ...

  10. c++中的复合类型

    复合类型是指基于其他类型而定义的类型. 而这里介绍的是引用和指针.并且指针和引用都提供了对其他对象的间接访问. 引用 引用还是很好理解的,就是为对象起了另外一个名字,引用类型引用另外一种类型. 通常将 ...