JavaScript操作DOM
来源:互联网 发布:淘宝平安旗舰店 编辑:程序博客网 时间:2024/05/29 19:34
一、什么是DOM
DOM是W3C(万维网联盟)的标准。
DOM定义了访问HTML和XML文档的标准:“W3C文档对象模型(DOM)是中立于平台和语言的接口,它允许程序和脚本动态地访问和更新文档的内容、结构和样式。”。
W3C DOM标准被分为3个不同的部分:
- 核心DOM - 针对任何结构化文档的标准模型
- XML DOM - 针对XML文档的标准模型
- HTML DOM - 针对HTML文档的标准模型
HTML DOM定义了所有HTML元素的对象和属性,以及访问它们的方法。
换言之,HTML DOM是关于如何获取、修改、添加或删除HTML元素的标准。
二、什么是DOM节点
在HTML DOM中,所有事物都是节点。
根据W3C的HTML DOM标准,HTML文档中的所有内容都是节点:
- 整个文档是一个文档节点
- 每个HTML元素是元素节点
- HTML元素内的文本是文本节点
- 每个HTML属性是属性节点
- 注释是注释节点
HTML DOM将HTML文档视作树结构。这种结构被称为节点树。
Node(节点)是DOM层次结构中的任何类型对象的通用名称,Node有很多类型,如元素节点、属性节点、文本节点、注释节点等,通过nodeType区分。
三、节点树与元素树
从上面不难理解节点树。Element继承了Node类,也就是说Element是Node多种类型中的一种,即当nodeType为1时Node即为ElementNode。元素树不会把标签之间的空格当成文本节点。
元素节点的属性:
- firstElementChild
- lastElementChild
- nextElementSibling
- previousElementSibling
- childElementCount 子元素节点数量
四、DOM对象的属性
- parentNode
- childNodes
- firstChild
- lastChild
- nextSibling
- previousSibling
- nodeType 节点的类型,1代表Element节点,2代表属性节点,3代表Text节点,8代表Comment节点,9代表Document节点,11代表DocumentFragment节点。
- nodeValue Text节点或Comment节点的文本内容。
- nodeName 元素的标签名,以大写形式表示。
五、DOM对象的方法
- getElementById()
- getElementsByTagName()
- getElementsByClassName()
- getElementsByName()
- document.querySelector()
- document.querySelectorAll()
- getAttribute()
- setAttribute()
- createAttribute()
- createElement()
- createTextNode()
- appendChild()
- insertBefore()
- removeChild()
- replaceChild()
- hasChildNodes() 返回一个布尔值,指示元素是否有子元素
六、DOM对象的事件
HTML DOM允许JavaScript 对HTML事件作出反应,事件在此省略。
七、获取DOM对象
访问HTML元素等同于访问节点。
可以通过5种方式6个方法获取DOM节点:
- 通过id:getElementById()方法
- 通过标签名:getElementsByTagName()方法
- 通过类名:getElementsByClassName()方法
- 通过name属性:getElementsByName()方法
- 通过CSS选择器:document.querySelector()方法、document.querySelectorAll()方法
八、操作HTML属性
- getAttribute()
- setAttribute()
也可以通过“node.属性名”的方式读取和设置属性。注意,有些HTML属性名称在JavaScript中是保留字,规则是在属性名前加html,如lable中的for=>htmlfor,但是有一个例外:class=>className。
九、创建节点
- createAttribute()
- createElement()
- createTextNode()
十、插入节点
- appendChild()
- insertBefore()
十一、删除节点
- removeChild()
十二、替换节点
- replaceChild()
十三、操作CSS
通过元素的style属性可以随意读取和设置元素的CSS样式
0 0
- [DOM]javascript DOM操作
- javascript 操作 HTML DOM
- JavaScript Dom操作XML
- javascript 操作 HTML DOM
- javascript 操作 HTML DOM
- javascript DOM 操作
- javascript 操作 HTML DOM
- javascript 操作 HTML DOM
- javascript --操作dom
- javascript操作DOM
- javascript DOM操作基础
- javascript DOM操作基础
- javascript DOM操作基础
- javascript DOM 操作
- javascript 操作 dom
- javascript DOM 操作
- javascript DOM操作基础
- javascript操作DOM示例
- Android的用户输入处理
- ubuntu server 12.04配置静态IP地址
- 用putty在云服务器上安装JDK
- C# 获取MAC地址
- 自己能力还有待改善,介绍一下我自己
- JavaScript操作DOM
- smpl Sudden momentary power loss
- hdu 2421
- 解决ArcGIS 9.3 - 10.2.2的一个BUG
- poj1042
- C# 获取硬盘信息
- OPC Server
- linux里的驱动接口
- 用putty在云服务器上安装Tomcat