DOM简要
在看Js视频的时候就感觉Dom这东西太奇妙了。在这个注重用户体验的Web设计时代里。Dom是至关重要的。
它的易用性强。而且遍历简单。支持XPath。
它既然这么强大那么就来简单的介绍Dom这个东东。
一、DOM是什么?
DOM即:文档对象模型(DocumentObject Model)。DOM就是一个编程接口。是针对HTML文档、XML等文档的一套API。就类似于JDBC是针对数据库的一套API一样。
二、DOM干什么?
DOM 是用来訪问或操作HTML文档、XHTML文档、XML文档中的节点元素。
如今基本上全部的浏览器都都运行了W3C公布的DOM规范,所以在浏览器上就能够用DOM的这些API。
三、什么时候用?
DOM实际上是一个操作文档里面所包括的内容的一个编程的API,开发者利用它从文档中读取、搜索、改动、添加和删除数据。
四、DOM具体说明
HTML文档是树状结构,根为<HTML>;DOM也是树状结构,根为window或document对象。所以DOM就能够把HTML以树状的形式呈现出来。
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGl1X3l1amllMjAxMWNvbQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">
五、DOM的分类
核心 DOM:定义了一套标准的能够针对不论什么文档的对象。
HTML DOM:针对HTML文档的DOM。
XML DOM:针对XML文档的DOM。
六、DOM的级别Level
DOM0:不是W3C规范。
DOM1:開始是W3C规范。专注于HTML文档和XML文档。
DOM2:对DOM1添加了样式表对象模型
DOM3:对DOM2添加了内容模型 (DTD 、Schemas) 和文档验证。
七、DOM优缺点
DOM的优势:易用性强,使用DOM时,将把全部的XML文档信息都存于内存中。而且遍历简单,支持XPath。增强了易用性。
DOM的缺点:效率低,解析速度慢,内存占用量过高,对于大文件来说差点儿不可能使用。另外效率低还表如今大量的消耗时间,由于使用DOM进行解析时,将为文档的每一个element、attribute、processing-instrUCtion和comment都创建一个对象,这样在DOM机制中所运用的大量对象的创建和销毁无疑会影响其效率。
总结:
以上仅仅是对DOM基础知识的积累,让它在自己的头脑里有个头绪。至于它在代码中怎样实现,在今后的学习中会慢慢补充。
版权声明:本文博客原创文章,博客,未经同意,不得转载。
DOM简要的更多相关文章
- jQuery简要dom操作
文本 dom 获取标签 $(选择). 创建一个标签对象 $("标签"): 由于所有的返回jQuery对象,能够调用链(无论jQuery API 回报jQuery对象) 插入标签 内 ...
- [译]Angular2 和TypeScript -- 一次简要的预览
原文链接:https://www.infoq.com/articles/Angular2-TypeScript-High-Level-Overview 作者: Yakov Fain Posted o ...
- 抛开react,如何理解virtual dom和immutability
去年以来,React的出现为前端框架设计和编程模式吹来了一阵春风.很多概念,无论是原本已有的.还是由React首先提出的,都因为React的流行而倍受关注,成为大家研究和学习的热点.本篇分享主要就聚焦 ...
- JavaScript DOM 编程艺术(第2版)读书笔记 (8)
<!--这章的内容略奇怪啊!可能是因为我之前没有接触过这些知识点,等以后用到的时候再回来翻阅吧,现在先简要介绍一下 js权限已通过,博客园好快的效率啊,谢谢O(∩_∩)O --> 缩略语 ...
- 基于jQuery查找dom的多种方式性能问题
这个问题的产生由于我们前端组每个人的编码习惯的差异,最主要的还是因为代码的维护性问题.在此基础上,我对jQuery源码(1.11.3)查找dom节点相关的内容进行了仔细的查阅,虽然并不能理解的很深入 ...
- 《JavaScript 闯关记》之 DOM(下)
Element 类型 除了 Document 类型之外,Element 类型就要算是 Web 编程中最常用的类型了.Element 类型用于表现 XML 或 HTML 元素,提供了对元素标签名.子节点 ...
- vue 源码学习三 vue中如何生成虚拟DOM
vm._render 生成虚拟dom 我们知道在挂载过程中, $mount 会调用 vm._update和vm._render 方法,vm._updata是负责把VNode渲染成真正的DOM,vm._ ...
- Javascript高级编程学习笔记(45)——DOM 操作表格及DOM动态集合
操作DOM表格 早些时候,HTML 还是以表格布局为主, 所以DOM操作表格是比较重要的一点 但是现如今 有其它的选择,所以表格的操作也就慢慢地淡出了人们的视线 所以这里也就不过多去详细展开,这里也就 ...
- vue虚拟DOM源码学习-vnode的挂载和更新流程
代码如下: <div id="app"> {{someVar}} </div> <script type="text/javascript& ...
随机推荐
- linux管理员
sudo password 添加管理员用户,设置其密码. exit 退出管理员.
- pygame系列_mouse鼠标事件
pygame.mouse提供了一些方法获取鼠标设备当前的状态 ''' pygame.mouse.get_pressed - get the state of the mouse buttons get ...
- Android-Universal-Image-Loader学习笔记(一个)
Android-Universal-Image-Loader它是一个开源项目,处理图像加载和缓存.闲暇的时候,读一些源.特别记录. 所述图像文件(磁盘)高速缓存,我们需要考虑的因素,如以下 1) 定 ...
- ExcelHelper Excel,Export,Import
using System; using System.Collections.Generic; using System.Data; using System.Data.Odbc; using Sys ...
- JBOSS EAP6.2.0的下载安装、环境变量配置以及部署
JBOSS EAP6.2.0的下载安装.环境变量配置以及部署 JBoss是纯Java的EJB(企业JavaBean)server. 第一步:下载安装 1.进入官网http://www.jboss.or ...
- Java 执行四则运算
四种基本的操作原理是将被转换成后缀缀表达式表达.然后计算. 转换思路和原则.可以参考将中缀表达式转化为后缀表达式 import java.math.BigDecimal; import java.ut ...
- wireshark教程
Wireshark世界上最流行的网络分析工具. 这个强大的工具能够捕捉网络中的数据,并为用户提供关于网络和上层协议的各种信息.与非常多其它网络工具一样.Wireshark也使用pcap network ...
- MessageBox()功能
MessageBox()功能.这是一个非常频繁使用的Win32 API,在屏幕上显示一个窗体,提出问题,并等待用户输入.它的原型是 int MessageBox(HWND hwnd,LPCTSTR l ...
- 发布Ubuntu/Linux系统cache,增加可用内存空间
桌面Ubuntu总内存4G,但free只有内存有100M 重视top命令检查看到真正的能力free内存.以下是真正的内存使用情况的看法有一个命令. watch -n 1 cat /proc/memin ...
- 将DataTable 数据插入 SQL SERVER 数据库
原文:将DataTable 数据插入 SQL SERVER 数据库 以下提供3中方式将DataTable中的数据插入到SQL SERVER 数据库: 一:使用sqlcommand.executenon ...