Javascript文档对象模型(DOM)实例分析

时间:2013-08-07 00:10:01  来源:第二电脑网  作者:第二电脑网

  第二电脑网导读:标签的语言的普遍规范),在SGML被用于定义HTML的DTD时,发现HTML本身是很不规范的。主要表现在某些标签可以省略/没 有/不允许结束标签(</xxx>),标签互相嵌入而很不不规范,属性值的定义方法也不统一等等。所以XML出现了,HTML中不规范的地方 都被明确定义,注意的是XML定义的是一种语言的语法和规范,是一系列满足这种规范的语言的统称,具体不同的场合会有不同的具体实现定义不...
  正文:

基础知识回顾:

DOM 即(Document Object Model),文档对象模型,DOM实际是把HTML当作XML文件来进行处理,用对象的眼光来打量HTML,可以说DOM是继HTML后Web的最有用的发明。

 

Some review of XML 网页教学网

SGML(基于标签的语言的普遍规范),在SGML被用于定义HTML的DTD时,发现HTML本身是很不规范的。主要表现在某些标签可以省略/没 有/不允许结束标签(</xxx>),标签互相嵌入而很不不规范,属性值的定义方法也不统一等等。所以XML出现了,HTML中不规范的地方 都被明确定义,注意的是XML定义的是一种语言的语法和规范,是一系列满足这种规范的语言的统称,具体不同的场合会有不同的具体实现定义不同的标签及属性 来来解决不同的问题,如RDF,RSS,SOAP,XSLT,XSL等等,当然HTML的XML实现为XHTML。XML的实质含义是使用结构化的纯文本 来表达数据。

 

XML几个语法要点:

首行为XML prolog,一般为<?xml version=”1.0”?>,该行告诉xml praser/浏览器,该XML如何被prase。 网页教学网

然后是文档类型声明(DTD),例如<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

网页教学网

然后是document element,它必须把所有其他标签都括入其中。就是该XML的最外层标签。也就是Root Element,注意这个要与DTD中声明的root element type相一致,如上面的html。

不想被Praser解析的东西用<![CDATA[ ]]>括起来。

在document element中间的用<? … ?>括起来的语句被称为PI(processing instruction),作用是给praser一些更特定的信息。


XML的API:

Webjx.Com

SAX(Sample API for XML):第一个,Java语言实现,event-based,praser从上到下的解析XML文档,当遇到每个标签/属性/值…时就会激发事件,而具体在该事件做什么由程序员定义。
优点,lightweight,fast,缺点,任何时候,你想停下,回退,或专门指定解析该文档的某特定部分时,都得从头从文档的第一行开始解析。

Webjx.Com

DOM:基于树结构,并且当解析完后,你想访问或修改添加文档对象都不需要重新解析。DOM是不针对于语言的,浏览器负责对DOM实现进行JavaScript的支持。 Webjx.Com

————————————————————————————————————————— Webjx.Com

DOM的核心: Node


由于DOM是树形结构,所以一个节点被抽象为对象Node,这是DOM的核心对象: 网页教学网

Node的种类一共有12种,通过Node.nodeType的取值来确定(为1-12),分为:

❑ Node.ELEMENT_NODE (1)


❑ Node.ATTRIBUTE_NODE (2)


❑ Node.TEXT_NODE (3) :<![CDATA[ ]]>中括着的纯文本,他没有子节点

❑ Node.CDATA_SECTION_NODE (4) :子节点一定为TextNode

网页教学网


❑ Node.ENTITY_REFERENCE_NODE (5) :

 

❑ Node.ENTITY_NODE (6) :DTD中的实体定义<!ENTITY foo “foo”>,无子节点

❑ Node.PROCESSING_INSTRUCTION_NODE (7) :PI,无子节点

Webjx.Com


❑ Node.COMMENT_NODE (8)

 

❑ Node.DOCUMENT_NODE (9) :最外层的Root element,包括所有其它节点

Webjx.Com


❑ Node.DOCUMENT_TYPE_NODE (10) :DTD,<!DOCTYPE………..>


❑ Node.DOCUMENT_FRAGMENT_NODE (11)

网页教学网

❑ Node.NOTATION_NODE (12) :DTD中的Nation定义

网页教学网

Node的属性和方法 网页教学网

nodeName 返回String. The name of ths node;this is defined depending on theype of node.
nodeValue 返回String. The value of the node'this is defined depending on the type of node.
nodeType 返回Number. One of the node type constant values.
ownerDocument 返回Document. Pointer to the document that this node belongs to.
firstChild 返回Node. Pointer to the first node in the childNodes list.
lastChild 返回Node. Pointer to the last node in the childNodes list.
childNodes 返回NodeList. A list of all child nodes.
Javascript文档对象模型(DOM)实例分析》由第二电脑网原创提供,转载请注明:http://www.002pc.com/master/College/Programming/JavaScript/26890.html


关于《Javascript文档对象模型(DOM)实例分析》文章的评论

站内搜索: 高级搜索

热门搜索:关键字 键盘  Windows PHP CPU style 系统 Google td tr IP function