htm Dom对象与 Xml Dom对象的理解
html 是基于Xml的文档规范。是一种特殊的xml文档,这一点很重要
1.xml 文档的操作,java,c#,...各种语言都提供了很好的api对文档进行解析,操作。当然js 也不例外,提供了一系列的方法。
具体的方法,w3c 上都有讲解。Document,Node, ElementNode,TextNode,AttributeNode,CommentNode,NodeList 这些都是xml的属性
xml 里面每个节点都是一个node对象,
2.html 是一种特殊的xml文档,那么特殊的地方在哪?
1) html 封装好了一系列的对象,比如 image,Table,Form,Input,Select...等等
我们可以用new Image() 这种方式去创建对象
html 里每个节点都是element对象,
2) html dom 提供了更方便的方法去访问节点, xxx.className, xxxx.id 等等,
在标准的xml 文档中,应该用getAtrribute() 去访问。 当然htm dom 也可以用这种方式去访问,因为它是xml
3.在加载html时,浏览器会创建全局的window对象,然后下载html文档,创建document对象,并把这个document对象赋值给全局的window对象。
这里创建的document 是 HTMLDocument , HTMLDocument 接口对 DOM Document 接口进行了扩展,定义 HTML 专用的属性和方法。在新的规范中
html中的元素都是htmlelment对象,HTMLElement 对象继承了 Node 和 Element 对象的标准属性。 意思就是 span div这些节点 可以使用node对象和element对象的方法
xml dom 与htm dom 在用途上相互补充,
4.tips
document.getElmentsByTagName 返回的是动态的Nodelist ,document.querySeletorAll() 返回的是静态的Nodelist
Nodelist 是xml dom 属性,以上二个方法也属于Xml Dom。
动态是指:
另外htmlcollections ,是返回一些htmlelement集合,比如 获取select 下面option, form 下面的表单元素等。
5.htmelement 都有nodetype属性,如下
| 元素element | 1 |
| 属性attr | 2 |
| 文本text | 3 |
| 注释comments | 8 |
| 文档document | 9 |
window.Node 有个全局的函数,里面包含了全部NodeType 静态值
相信 有了以上的指导思想,在理解很多方法,模型上很有帮助
htm Dom对象与 Xml Dom对象的理解的更多相关文章
- 雷林鹏分享:XML DOM
XML DOM DOM(Document Object Model 文档对象模型)定义了访问和操作文档的标准方法. XML DOM XML DOM(XML Document Object Model) ...
- xml dom minidom
一. xml相关术语: 1.Document(文档): 对应一个xml文件 2.Declaration(声明): <?xml version="1.0" encoding=& ...
- XML DOM学习
XML 文档对象模型定义访问和操作XML文档的标准方法. XML DOM 是 XML Document Object Model 的缩写,即 XML 文档对象模型. DOM 将 XML 文档作为一个树 ...
- python use dom to write xml file
#encoding:utf-8 ''' write xml in dom style ''' from xml.dom.minidom import Document doc = Document() ...
- python模块:xml.dom.minidom
"""Simple implementation of the Level 1 DOM. Namespaces and other minor Level 2 featu ...
- Javascript 解析字符串生成 XML DOM 对象。
Javascript 接收字符串生成 XML DOM 对象.实测对 Firefox .IE6 有效.可用于解析 ajax 的服务器响应结果,也可用于解析自定义字符串.1. [代码]函数 ppt模 ...
- js ajax 传送xml dom对象到服务器
客户端代码 1 <script> var isie = true; var xmlhttp = null; function createXMLHTTP() {//创建XMLXMLHttp ...
- XML DOM - Range 对象
Range对象 Range对象表示文档的连续范围区域,如用户在浏览器窗口中用鼠标拖动选中的区域. dom标准Range对象 在IE中使用TextRange对象 range对象常用的建立方法在开发中 ...
- dom对象详解--document对象(一)
document对象 Document对象代表整个html文档,可用来访问页面中的所有元素,是最复杂的一个dom对象,可以说是学习好dom编程的关键所在. Document对象是window对象的一 ...
随机推荐
- nginx完美支持yii2框架
nginx完美支持yii2框架 server {listen 80;server_name www.peita.net peita.net;# default_server;access_log /d ...
- python中split函数的使用
最近学习python,对split函数做了下总结,内容如下:
- css中transition的使用以及:before:after的使用(小样式)
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- 使用sql创建表并添加注释
Create table T_ErrorLogTable_tb ( ELTID int identity(1,1) primary key,--编号 ELTTime date,--错误发生日期 ELT ...
- Unity脚本在层级面板中的执行顺序测试4-附加整理
测试4为一些附加内容,后续的各种tips都加在此. 前几篇测试的链接: Unity脚本在层级面板中的执行顺序测试1 http://www.cnblogs.com/hont/p/4298110.html ...
- 编译器错误消息: CS0016: 未能写入输出文件“c:/Windows/Microsoft.NET/Framework/v2.0.50727/....dll”--“拒绝访问。
错误如下: “/”应用程序中的服务器错误. 编译错误 说明: 在编译向该请求提供服务所需资源的过程中出现错误.请检查下列特定错误详细信息并适当地修改源代码. 编译器错误消息: CS0016: 未能写入 ...
- EasyUI的DataGrid 打印导出
EasyUI的DataGrid 打印导出 一直在Winform和WPF的项目,偶尔接触Web都是网上下个模板修修改改就成了,学习的不太深入. 今日遇到一个打印导出datagrid的问题,做桌面项目 ...
- bouncycastle创建csr
public static void main(String[] args) { String subjectDN = "CN=duwenlei"; String algorith ...
- PHP脚本redis类的实例源码
class redisDB{ private $redis; //redis对象 /** * 初始化Redis * $config = ar ...
- django下的ckeditor 5.0 文本编辑器上传功能。
完整的后台界面怎么可以没有文本编辑器,但是django的admin界面很疑惑,没有自带文本编辑器,好在网上有不少成型的库可以用 我用的是ckeditor编辑器,安装和配置我引用别人的博客 这篇博客配置 ...