文档对象DOM的操作及使用
Dom对象是什么?
DOM对象就是每次你打开浏览器后,进入一个网址时浏览器获取到的HTML文本内容,当浏览器获取到HTML文本内容时,会将其内容以DOM对象的形式缓存到内存中,这时你便可以对DOM对象进行任何的操作及获取了。以下是学习到的javascript操作DOM对象的学习及总结:
一、DOM树节点分为四大类:
(1)文档节点
文档节点:doucment,Dom树最顶层的节点
(2)元素节点
包括:html、head、title、body、head、h1-h6、div、span等
(3)属性节点
包括:属性和方法、id 、class
(4)文本节点
包括:text
二、访问Dom树节点
(1)返回单一元素节点有2种方法:
getElementById、querySeletor
示例:
- //获取id=one的元素节点
- var firstItem = document.getElementById('one');
- //获取li元素节点
- var firstItem = document.querySeletor('li');
- //获取id=one的li元素节点
- var firstItem = docuemt.querySeletor('li#one');
(2)返回一个或多个元素节点
getElementsByClassName
getElementsByTagName
querySelectorAll
示例:
- //获取class='hot'的元素节点
- var hotItem = document.getElementsByClassName('hot');
- //获取li元素节点,返回的是nodeList数组
- var liItems = document.getElementsByTagName('li');
- //获取li元素节点,返回的是nodeList数组
- var liItems2 = document.querySelectorAll('li');
- //获取class属性名为hot的li元素节点,返回的是nodeList数组
- var nodeItems = document.querySelectorAll('li.hot');
(3)元素节点间的遍历
1)父子节点
parentNode 知道子节点,查找父亲节点
2)兄弟节点
previousSibling 查找相邻兄弟节点的上一个节点
nextSibling 查找相邻兄弟节点的下一个节点
previousElementSibling 查找上一个元素节点(注意:只能是元素节点)
nextElementSibling 查找下一个元素节点(注意:只能是元素节点)
3)前后节点
firstChild 查找第一个节点
lastChild 查找最后一个节点
firstElementChild 查找第一个元素节点
lastElementChild 查找最后一个元素节点
三、操作Dom树节点
(1)新增元素节点 createElement()
(2)新增文本节点 createTextNode()
(3)将元素节点/文本节点,追加到现有节点后 appendChild()
(4)将元素节点/文本节点,添加到元素节点开始处 insertBefore()
示例:
- //使用createElement() createTextNode() appendChild()在two上进行追加节点内容
- var itemTwo = document.getElementById("two").lastChild;
- var newElement_em = document.createElement("em");
- var newEmContent = document.createTextNode("123");
- newElement_em.appendChild(newEmContent);
- //使用insertBefore方法,在元素节点前插入新元素
- var ulItem = document.getElementsByTagName("ul")[0];
- var newLiItem = createElement("li");
- var newContent = createTextNode("这是新增的内容")
- newLiItem.appendChild(newContent);
- ulItem.insertBefore(newLiItem,ulItem.firstChild);
四、操作属性节点
获取属性值 getAttribute()
检查元素节点是否包含特定属性 hasAttribute()
设置属性值 setAttribute()
从元素节点移除属性 removeAttribute()
五、获取/更新元素/文本内容
获取元素内容
innerHTML
获取文本内容
nodeValue
textContent
innerText
修改文本节点内容
nodeValue="修改的值"
textContent="修改的值"
修改元素节点内容
innerHTML="修改的元素内容"
完结.
文档对象DOM的操作及使用的更多相关文章
- 第一百一十三节,JavaScript文档对象,DOM基础
JavaScript文档对象,DOM基础 学习要点: 1.DOM介绍 2.查找元素 3.DOM节点 4.节点操作 DOM(Document Object Model)即文档对象模型,针对HTML和XM ...
- 前端开发—BOM对象DOM文档对象操作
BOM 浏览器对象 BOM:Browser Object Model 操作浏览器,需要调用window对象,它是所有浏览器都支持的对象,表示的就是浏览器窗口 window对象可以通过点调用子对象 wi ...
- DOM文档对象总结
DOM总结: DOM:文档对象模型document object model DOM三层模型: DOM1:将HTML文档封装成对象 DOM2:将XML文档封装成对象 DOM3:将XML文档封装成对象 ...
- 第一百一十四节,JavaScript文档对象,DOM进阶
JavaScript文档对象,DOM进阶 学习要点: 1.DOM类型 2.DOM扩展 3.DOM操作内容 DOM自身存在很多类型,在DOM基础课程中大部分都有所接触,比如Element类型:表示的是元 ...
- 文档对象类型DOM
1 DOM概述 1.1 什么是DOM 文档对象模型 Document Object Model 文档对象模型 是表示和操作 HTML和XML文档内容的基础API 文档对象模型,是W3C组织推荐的处理可 ...
- js操作文档对象的节点
好吧,为了能让大家不至于睡着,我们先回顾先前面的东东吧~ 1.首先我们写了javaScriput的是一门弱类型的解释性的脚本语言:弱类型:我们的变量不用申明其具体的数据类型,在使用的时候浏览器根据其存 ...
- 文档对象模型DOM通俗讲解
转自:http://www.jb51.net/article/42671.htm 在开始之前先说一点,DOM是非常容易理解的,但是大家说的太官方,让人很是难于理解,我们就用非常简单的语言翻译一遍.加深 ...
- 数组对象元素的添加,String对象,BOM对象以及文档对象的获取
数组对象的删除有三种方法: pop(); //移除最后一个元素并返回该元素值shift(); //移除最前一个元素并返回该元素值,数组中元素自动前移splice(0,2); / ...
- XML文档读取-DOM
DOM(Document Object Model),“文档对象模型”早期是为了解决不用浏览器间数据兼容问题提出的解决方案,现在已经是W3C组织推荐的处理可扩展标志语言的标准编程接口. W3C DOM ...
随机推荐
- day2_python之文件操作
一.文件常用操作 #1. 打开文件的模式有(默认为文本模式): r ,只读模式[默认模式,文件必须存在,不存在则抛出异常] w,只写模式[不可读:不存在则创建:存在则清空内容] a, 之追加写模式[不 ...
- Android 使用ViewPager结合PhotoView开源组件实现网络图片在线浏览功能
在实际的开发中,我们市场会遇到这样的情况:点击某图片,浏览某列表(某列表详情)中的所有图片数据,当然,这些图片是可以放大和缩小的,比如我们看下百度贴吧的浏览大图的效果: 链接 这种功能,在一些app ...
- Android 动态设置控件获取焦点
之前写过一篇博客,简单的介绍了Android 隐藏EditText的焦点,之所以要隐藏EditText的焦点,是因为当应用在第一次进入某个Activity时,由于该页面中的EditText获取了焦点, ...
- oracle索引的操作
ORACLE对索引有两种访问模式. 索引唯一扫描 ( INDEX UNIQUE SCAN) 大多数情况下, 优化器通过WHERE子句访问INDEX. 例如: 表LODGING有两个索引 : 建立在LO ...
- Java 简单校验框架
数据校验框架现状 在我们的方法入口后面,难免会有如下样子的代码: result.setSuccess(false); if (StringUtils.isBlank(bizOrder.getThird ...
- JavaScript 拖曳和居中问题
今天遇到了一个问题,是这样的,有一个div盒子,实现盒子居中,居中的样式是这样的见下 #box{ width:300px; height:150px; position:absolute; left: ...
- 【原生JS】图片预加载之无序预加载
图片预加载之无序预加载 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset= ...
- 3-7 彻底搞清楚unicode和utf8编码
- H3C RIP路由表的维护
- P1077 旅行
题目描述 你要进行一个行程为7000KM的旅行,现在沿途有些汽车旅馆,为了安全起见,每天晚上都不开车,住在汽车旅馆,你手里现在已经有一个旅馆列表,用离起点的距离来标识,如下: 0, 990, 1010 ...