文档对象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 ...
随机推荐
- call_user_func_array() 内置函数
func_get_args()方法是获取当前文件所有的函数参数 fun_num_args()这个方法是获取方法实参个数 call_user_func_array()这个方法是内置函数,可以直接调用函数 ...
- win7 debug 工具
x86 处理器中的 CS 与 IP 寄存器介绍与调试: http://blog.sina.com.cn/s/blog_54f82cc2010121yj.html https://www.jianshu ...
- elasticsearch-倒排索引原理
倒排索引 Elasticsearch 使用一种称为 倒排索引 的结构,它适用于快速的全文搜索.一个倒排索引由文档中所有不重复词的列表构成,对于其中每个词,有一个包含它的文档列表. 例如,假设我们有两个 ...
- Python--day30--网络基础
单波: 查找mac:
- java throw
自行抛出一个异常对象,抛出异常类的对象: 若throw抛出的是Runtime异常: 程序可以显示使用try...catch来捕获并处理,也可以不管,直接交给方法调用者处理: 若throw抛出Check ...
- P1088 上台阶
题目描述 楼梯有 \(n(1 \le n \le 50)\) 阶台阶,上楼时可以一步上 \(1\) 阶,也可以一步上 \(2\) 阶,也可以一步上 \(3\) 阶,编程计算共有多少种不同的走法. 输入 ...
- 9月29更新美版T-mobile版本iPhone7代和7P有锁机卡贴解锁方法
T版是块难解的砖头,之前一直没有找到稳定解锁办法,经过多次不写努力和实验,终于解决 不管是用超雪卡贴还是GPP卡贴,第一次先用连接WIFI激活手机! 注意:一定不要用ICCID通用激活,或者是TM ...
- linux一个进程如何睡眠
如果我们深入 <linux/wait.h>, 你见到在 wait_queue_head_t 类型后面的数据结构是非 常简单的; 它包含一个自旋锁和一个链表. 这个链表是一个等待队列入口, ...
- keep-alive及路由渲染
切换路由的时候,每次切换的时候得重新渲染一遍,这样的话会影响到性能的.此时用<keep-alive>包裹着app里的<router-view>,进行缓存. 如果一个页面涉及到了 ...
- ajaxStart()和ajaxStop()方法
使用ajaxSetup()方法设置全局Ajax默认选项 使用ajaxSetup()方法可以设置Ajax请求的一些全局性选项值,设置完成后,后面的Ajax请求将不需要再添加这些选项值,它的调用格式为: ...