[DOM]初识DOM
文档对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展标志语言的标准编程接口。在网页上,组织页面(或文档)的对象被组织在一个树形结构中,用来表示文档中对象的标准模型就称为DOM。
DOM的出现统一了浏览器残次不齐的问题,大大地扩展了Javascript的工作内容。使得页面内容更加丰富。

这张图片展示的就是DOM树的结构。
node:节点。类似树的结构,DOM由结点构成。结点又分为元素结点,文本结点和属性结点。元素结点很容易理解,想<a titile="begin">text</a>这样的一个整体就是元素结点,文本结点是里面的内容即text,属性结点就是指类似title这样的东西。
DOM获取元素有几种方式:
getElementById
getElementsByTagName
getElementsByClassName
getElementsByName
仔细看的话只有getElementById是Element,其他三种都是Elements
因此getElementById得到的是一个对象,其他三种都是对象数组,只能通过取下标获得。
getAttribute
setAttribute
设置属性值跟取得属性值,也可以直接靠 .attribute 取得,但兼容性不太强。
childNodes
firstChild
lastChild
nodeType
nodeValue
nodeName
childNodes是某个node的子节点,包括元素节点、文本节点等
firstChild 是取第一个节点,lastChild是取最后一个节点
nodeType是显示节点类型值,对于一个节点有唯一值匹配
元素:1
属性:2
文本:3
注释:8
文档:9
nodeValue是节点值
nodeName是节点标签名
例如:
对于<p id="demo" title="p1"><a>text</a>p_text</p>
c=document.getElementById("demo") //c为p节点
c.childNodes[0] --> <a>text</a>
c.childNodes[1] --> "p_text"
c.childNodes[0].nodeType -->1
c.childNodes[1].nodeType -->3
c.childNodes[0].nodeValue --> null
c.childNodes[1].nodeValue-->"p_text"
c.childNodes[0].nodeName --> "a"
c.childNodes[1].nodeName --> "#text"
[DOM]初识DOM的更多相关文章
- 初识DOM
初识DOM 一. 节点的获取.插入.创建.删除.替换.修改文本节点 获取 1.document.getElementById 2.(element)document.getElementsByTagN ...
- React v16-alpha 从virtual dom 到 dom 源码简读
一.物料准备 1.克隆react源码, github 地址:https://github.com/facebook/react.git 2.安装gulp 3.在react源码根目录下: $npm in ...
- -_-#【Dom Ready / Dom Load】
Dom Ready和Dom Load DOM Ready 详解 javascript的domReady 域名解析 - 加载html - 加载js和css - Dom Ready - 加载图片等其他信息 ...
- Virtual DOM 虚拟DOM的理解(转)
作者:戴嘉华 转载请注明出处并保留原文链接( #13 )和作者信息. 目录: 1 前言 2 对前端应用状态管理思考 3 Virtual DOM 算法 4 算法实现 4.1 步骤一:用JS对象模拟DOM ...
- js 字符串转dom 和dom 转字符串
js 字符串转dom 和dom 转字符串 博客分类: JavaScript 前言: 在javascript里面动态创建标准dom对象一般使用: var obj = document.createE ...
- javascript DOM和DOM操作的四种基本方法
在了解了javascript的语言特性后,javascript真正大放光彩的地方来了——这就是javascript DOM Javascript DOM DOM(Document Object Mod ...
- 精讲 org.w3c.dom(java dom)解析XML文档
org.w3c.dom(java dom)解析XML文档 位于org.w3c.dom操作XML会比较简单,就是将XML看做是一颗树,DOM就是对这颗树的一个数据结构的描述,但对大型XML文件效果可能会 ...
- 虚拟DOM Vitural DOM Tree
提起Virtual DOM,总是给人一种高深莫测的感觉,大家都知道它比DOM快.那么Virtual DOM到底是何方神圣呢?在深入理解Virtual DOM之前,先让我们回顾一下DOM. 一.什么 ...
- DOM & Shadow DOM & Virtual DOM
DOM & Shadow DOM & Virtual DOM What is the difference between Shadow DOM and Virtual DOM? ht ...
随机推荐
- sklearn pipeline
sklearn.pipeline pipeline的目的将许多算法模型串联起来,比如将特征提取.归一化.分类组织在一起形成一个典型的机器学习问题工作流. 优点: 1.直接调用fit和predict方法 ...
- todos+增删改查+js练习
增删改查+js练习+es6字符串模板@haloBabyBear <!DOCTYPE html> <html lang="en"> <head> ...
- sql注入-推断是否存在SQL注入-加法和减法
这里我们需要区分一下数字型和字符串型: 数字型:不需要使用单引号来表示 其他类型:使用单引号来表示 综合上述,我们可以发现我们的例子是数字型的,这样我们就可以使用加法和减法来判断了. 加法,我们在参数 ...
- zabbix免客户端监控网站URL
1.我们需要在zabbix服务器端(这台服务器需要能正常上网)同时安装zabbix-agent客户端,使其正常监控zabbix服务器 2.创建web监测 点击web监测 创建web监测 3.配置异常报 ...
- edgedb 内部pg 数据存储的探索 (二) 创建数据库命令说明
前面已经创建好了一个简单可以访问pg 的edgedb 环境,现在测试几个数据库操作命令在pg 的存储 创建数据库 连接环境 注意账户是按照上次创建的环境配置 edgedb -u edgedb 创建数据 ...
- 【转】计算机信息系统安全保护等级划分准则(GB 17859-1999)
计算机信息系统安全保护等级划分准则(GB 17859-1999) 概述 计算机信息系统安全保护等级划分准则(GB 17859-1999) 1 范围 本标准规定了计算机系统安全保护能力的五个等级,即: ...
- 一个简单的python爬虫程序
python|网络爬虫 概述 这是一个简单的python爬虫程序,仅用作技术学习与交流,主要是通过一个简单的实际案例来对网络爬虫有个基础的认识. 什么是网络爬虫 简单的讲,网络爬虫就是模拟人访问web ...
- C++标准模板类库(STL)之queue初步
1,STL里有些什么? 包括三个内容:容器.迭代器.算法. 2,容器有哪些? 有stack, vector, queue, deque, list, set, multiset, map, multi ...
- 总结,为什么要重写hashset的hashcode()和equals()?
看了非常多博客,怕自己忘记了,通俗易懂的总结如下 本人总结下: 重写前,比较地址,hashcode方法如果相等可能是同一个对象,所以再用equals再比内存地址 重写后,比较值,重写hashCode方 ...
- Redis的过期策略和内存淘汰策略(转)
Redis的过期策略 我们都知道,Redis是key-value数据库,我们可以设置Redis中缓存的key的过期时间.Redis的过期策略就是指当Redis中缓存的key过期了,Redis如何处理. ...