文档对象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 ...
随机推荐
- 5款实用的jQuery验证码插件
效果图 文档结构 HTML <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...
- ajax的状态
readyState:ajax对象的状态值,客户端与客户的交互过程 0:未初始化 1:已经调用了open方法 2:已经接收到响应头 3:已经接受了一部分数据(存在相应正文里) 4:已经接受了全部数据 ...
- python-字符编码数据类型转换
1 - 编码格式转换 1.1 编码格式介绍 字符集 介绍 ASCII ASCII 码使用指定的7 位或8 位二进制数组合来表示128 或256 种可能的字符 ANSI ANSI是一种字符代码,为使计算 ...
- SSM整合 上传下载之添加商品
上传下载细节: 导入xml配置文件!! Controller中要配置存储路径,调用transferto上传文件 上传图片 要将图片的类设置为 MultipartFile 图片下载: 源码: 页面展示: ...
- Python图表绘制Matplotlib
引入 import numpy as npimport pandas as pdimport matplotlib.pyplot as plt# 导入相关模块 使用 # 图表窗口1 → plt.sho ...
- [转]ECMAScript 2016,2017 和 2018 中所有新功能的示例
很难追踪 JavaScript(ECMAScript)中的新功能. 想找到有用的代码示例更加困难. 因此,在本文中,我将介绍 TC39 已完成 ES2016,ES2017 和 ES2018(最终草案) ...
- Python--day41--事件和信号量之模拟连接数据库并在连接三次后抛出连接超时异常
#事件被创建的时候#False状态 #wait()阻塞#True状态 #wait() 非阻塞#clear 设置状态为False#set 设置状态为True #数据库 --- 文件夹#文件夹里有好多ex ...
- Mysql怎样控制replace替换的次数?
我想把“ABC是ABC”替换成“123是ABC”,也就是找出第一个ABC替换成123,MYSQL命令应该怎么写? UPDATE data SET body=REPLACE(body, 'ABC', ' ...
- springboot2.0.2+redis+spring-session 解决session共享的问题
准备工作 新建两个springboot2.0.2版本的服务,配置文件添加: #在默认设置下,Eureka服务注册中心也会将自己作为客户端来尝试注册它自己,所以我们需要禁用它的客户端注册行为 eurek ...
- java 自动关闭资源的try语句
Java 7简化资源清理(try-with-resources)自动关闭资源的try语句 自动关闭资源格式: try( )//此处多了圆括号,()圆括号内写打开资源的代码,在这里创建的对象必须实现Au ...