XML DOM
xml文件基本格式

xml文件基本格式
XML(可扩展标记语言) 文件的基本格式由两部分组成:XML 文档类型定义 (DTD) 和 XML 文档本体 (DOM)。
1. DTD(DocumentType):DTD 是一种元数据,用于描述 XML 文档的类型、主体部分、命名空间等信息。
它通常被放在 XML 文档的开头,用来描述 XML 文档的结构和内容。
2. DOM(DocumentObjectModel):DOM 是一种数据模型,用于描述XML 文档的结构和组织。
它由 XML 文档本体 (DOM 树) 组成,每个节点表示 XML 文档中的一个元素或属性,节点之间的关系表示 XML 文档的结构。
XML 文档的基本格式如下:
```
<!DOCTYPE document [
<!ELEMENT document (title?, content*)>
<!ATTLIST document title CDATA #IMPLIED>
<!ATTLIST document content CDATA #IMPLIED>
]>
<document>
<title>My Document</title>
<content>This is my document.</content>
</document>
```
在上述示例中,文档类型定义 (DTD) 描述了文档的结构和内容,而 XML 文档本体 (DOM 树) 则描述了文档的结构和组织。
文档本体包含了文档的标题和内容,其中标题和内容均属于文档本体的属性。
xml名词术语

xml名词术语以下是一些常见的XML名词术语:1. 标签(Tag):XML中的标识符,用于标识一个元素的开始和结束,通常是用尖括号包围的名称。
2. 元素(Element):指在XML文档中定义的结构化数据单元,由标签、属性和内容组成。
3. 属性(Attribute):XML元素中的数据项,用于提供有关元素的更多信息,通常是作为键值对的形式出现。
4. 命名空间(Namespace):XML中的一个机制,用于避免不同XML文档中的元素和属性名称重复的问题。
5. 文档模型(Document Model):用于将XML数据当作树型对象进行解析和操纵的技术,也称作“拉”模型。
DOM是XML文档的一种特殊树型结构编程模型。
DOM标准目前分成三个级别。
6. 事件模型(Event Model):用于通过使用回调或处理程序对XML数据进行解析的技术,也称作“推”模型。
7. 名称空间(Namespace):明确从不同的DTD或模式中标识出XML标记的方法,这样它们可以混合在同一个XML文档中。
8. RDF:资源描述框架,用于将XML属性数据和通常驻留在别处的信息相关联的一种压缩XML方言。
9. SOAP:“简单对象访问协议”是类似于XML-RPC(请参阅XML-RPC)的网络协议。
通过使用SOAP,应用程序可以创建远程对象、调用该对象上的方法,以及检索结果。
10. 验证:关于DTD和模式,验证结构良好的XML文档是否正确。
11. 结构良好:一个XML文档,它的标记和数据符合XML 1.0语法。
12. W3C:世界万维网联盟,它已经成为大多数XML相关技术的重要标准主体。
W3C将最终认可的规范称作“推荐”(而不是标准)。
qt读写XML资料[DOM方式]
![qt读写XML资料[DOM方式]](https://img.taocdn.com/s3/m/1e21d71dfad6195f312ba6dc.png)
qt读写XML资料[DOM方式]我们可以看到,如果所要读取的XML文件不是很大,采用DOM读取方法还是很便捷的,由于我用的也是DOM树读取的方法,所以,本文所介绍的也主要是基于DOM的方法读取。
根据常用的操作,我简单的把对XML的操作分为以下几类:1 首先对XML文件进行操作,打开文件。
这个其实就是对文件进行操作,可以把它直接定义为构造函数,在对对象进行初始化时完成。
TopoDataReader::TopoDataReader(const wstring&filePath):_filePath(filePath),_qDomDoc("mydocument"),_qFile(QString::fromStdWString(fileP ath)){if (!_qFile.open(QIODevice::ReadOnly)){return;}if (!_qDomDoc.setContent(&_qFile)){_qFile.close();return;}}2 读取XML文件中的节点内容假设XML文件格式如下(1)<switchs><switch snmpip=211.87.235.136 newwork=front></switch></switchs>(2)<ip>211.87.235.136</ip>对于第一种情况,采用如下方法:QDomElement docElem = _qDomDoc.documentElement();QDomNode nodeswitch=docElem.elementsByTagName("switch ");//红色的为标签名QDomElement elemnodeswitch=nodeswitch.toElement();string snmpip=qPrintable(elemnodeswitch.attribute("snmpip"));//network的也是如此方法获取对于第二种情况,采用如下方法:直接调用text() API就可以了string ip=qPrintable(elementnodeip.text());但是,假设文件中有多个同样的节点,如下<a><b></b><b></b></a>这样用elementsByTagName("b")返回的就是一个childNodes()而不是一个单独的node了。
nodexmldom用法

nodexmldom用法xmldom是一个用于解析和操作XML文档的JavaScript库。
它是基于DOM模型构建的,可以在Node.js环境下使用。
安装要使用xmldom库,首先需要在Node.js项目中进行安装。
可以通过npm命令来安装xmldom:```npm install xmldom```使用xmldom一旦安装成功,就可以在Node.js项目中引入xmldom模块:```javascriptconst { DOMParser, XMLSerializer } = require('xmldom');```解析XML文档要解析XML文档,可以使用DOMParser类的实例,并调用parseFromString方法。
这将返回一个Document对象,表示整个XML文档:```javascriptconst xml = `<root><element>Node.js</element></root>`;const parser = new DOMParser(;const doc = parser.parseFromString(xml, 'text/xml');```现在,我们可以使用Document对象来访问和操作XML文档的内容。
获取根元素要获取XML文档的根元素,可以使用Document对象的documentElement属性:```javascriptconst root = doc.documentElement;console.log(root.tagName); // 输出: root```获取元素要获取XML文档中的元素,可以使用Document对象的getElementById、getElementsByTagName或getElementsByClassName等方法:```javascriptconst element = doc.getElementById('element');console.log(element.tagName); // 输出: elementconst elements = doc.getElementsByTagName('element'); console.log(elements.length); // 输出: 1const elementsByClass = doc.getElementsByClassName('class'); console.log(elementsByClass.length); // 输出: 2```获取元素的属性要获取元素的属性,可以使用Element对象的getAttribute方法:```javascriptconst element = doc.getElementsByTagName('element')[0]; const attribute = element.getAttribute('attribute'); console.log(attribute); // 输出: value```设置元素的属性要设置元素的属性,可以使用Element对象的setAttribute方法:```javascriptconst element = doc.getElementsByTagName('element')[0]; element.setAttribute('attribute', 'new value');console.log(element.getAttribute('attribute')); // 输出: new value```获取元素的文本内容要获取元素的文本内容,可以使用Element对象的textContent属性:```javascriptconst element = doc.getElementsByTagName('element')[0];console.log(element.textContent); // 输出: Node.js```修改元素的文本内容要修改元素的文本内容,可以直接修改Element对象的textContent属性的值:```javascriptconst element = doc.getElementsByTagName('element')[0];element.textContent = 'New text content';console.log(element.textContent); // 输出: New text content```添加元素要添加新的元素,可以创建一个新的Element对象,并使用Document对象的createElement方法:```javascriptconst newElement = doc.createElement('newElement');newElement.textContent = 'New element';doc.documentElement.appendChild(newElement);console.log(doc.documentElement.innerHTML);```删除元素要删除元素,可以使用Element对象的removeChild方法:```javascriptconst element = doc.getElementsByTagName('element')[0];doc.documentElement.removeChild(element);console.log(doc.documentElement.innerHTML);```保存XML文档要将Document对象保存为XML文档,可以使用XMLSerializer类的实例,并调用serializeToString方法:```javascriptconst serializer = new XMLSerializer(;const xmlString = serializer.serializeToString(doc);console.log(xmlString);```以上是xmldom的基本用法,通过使用DOMParser解析XML文档,使用Document对象访问和操作XML文档的内容,以及使用XMLSerializer 将Document对象保存为XML文档。
JSP DOM介绍

JSP DOM介绍DOM是Document Object Model的缩写,即文档对象模型,是W3C组件推荐的处理XML的标准接口,定义了所有文档元素的对象和属性,以及访问它们的方法(接口)。
W3C文档对象模型(DOM)定义了访问诸如XML和XHTML文档的标准,是一个使程序和脚本有能力动态地访问和更新文档的内容、结构以及样式的平台和语言中立的接口。
W3C DOM被分为3个不同的部分:●核心DOM 用于任何结构化文档的标准模型。
●XML DOM 用于XML文档的标准模型。
●HTML DOM 用于HTML文档的标准模型。
XML DOM定义了访问和处理XML文档的标准方法。
XML DOM是XML D ocument Object Model的缩写,即XML文档对象模型,是用于获取、更改、添加或删除XML元素的标准。
HTML DOM定义所有HTML元素的对象和属性,以及访问它们的方法(接口)。
W3C文件对象模型(DOM)可以看作是一个平台或语言中立的(language-neu tral)界面,它允许程序和脚本动态的访问以及更新文档的内容、结构、脚本程序。
在这里DOM仅仅只是一种对某种功能和结构的声明,告诉别的对象,具有什么样的概念定义。
简单来看,DOM可以看作是一组API(Application Program Interface 即应用程序接口),它把HTML文档,XML文档等看成一个文档对象,在里面存放的是对这些文档操作的属性和方法的定义。
DOM技术并不是首先用于XML文档,对于HTML文档来说,早就可以使用DOM来读取里面的数据了。
W3C DOM提供了一组描述HTML及XML文件的标准对象和一个用来访问和操作这类文件的标准界面。
若以面向对象的思维来看,可以把HTML文档或XML 文档看成是一个对象,一个XML文档对象可以包含其它的对象,如节点对象。
对XML文档对象的操作实际是对该对象的节点对象的操作,可以对对象进行修改等操作。
读写XML的四种方法

读写XML的四种方法XML(eXtensible Markup Language)是一种用于表示和传输数据的标记语言。
它具有良好的可读性和扩展性,被广泛应用于Web开发、数据交换和配置文件等领域。
在读写和处理XML数据时,有许多方法可供选择。
本文将介绍四种常见的读写XML的方法:DOM、SAX、JDOM、和XMLStreamReader/XMLStreamWriter。
1. DOM(Document Object Model):DOM是一种基于树形结构的解析器,它将整个XML文档加载到内存中,并将其表示为一个对象树。
在DOM中,每个XML元素都被表示为一个节点(Node),可以通过节点的属性和方法对其进行操作。
读取XML文档时,可以使用DOM解析器将其转换为一个DOM树,然后通过节点的方法访问和修改树结构。
写入XML文档时,可以通过创建和修改节点来构建DOM树,并使用DOM解析器将其保存为XML文档。
使用DOM读取XML文档的基本步骤如下:- 创建一个DocumentBuilderFactory对象。
- 根据DocumentBuilderFactory对象创建一个DocumentBuilder对象。
- 使用DocumentBuilder对象解析XML文档,并返回一个Document对象。
- 通过Document对象的方法遍历和操作XML文档的节点。
使用DOM写入XML文档的基本步骤如下:- 创建一个DocumentBuilderFactory对象。
- 根据DocumentBuilderFactory对象创建一个DocumentBuilder对象。
- 使用DocumentBuilder对象创建一个Document对象。
- 通过Document对象的方法创建和添加元素节点、属性节点等。
- 使用TransformerFactory和Transformer对象将Document对象保存为XML文档。
DOM的优点是易于使用和理解,可以方便地遍历和修改XML文档。
xml 格式 解析
xml 格式解析XML格式解析是一种常见的数据解析方法,它可以将XML格式的数据转换为可供程序使用的数据结构。
XML即可扩展标记语言(eXtensible Markup Language),它被广泛应用于数据交换和存储。
下面将介绍XML格式解析的原理和常用的解析方法。
XML格式解析的原理是通过读取XML文件并识别其中的标签、属性和文本内容,将其转换为内存中的数据结构,以便程序进行进一步处理。
XML文件由起始标签、结束标签、属性和文本内容组成。
解析器会根据这些组成部分对XML文档进行解析。
常用的XML格式解析方法有两种:DOM解析和SAX解析。
DOM(文档对象模型)解析是一种将整个XML文档加载到内存中,并构建一个XML树结构的解析方法。
它可以方便地对XML文档进行增删改查操作。
DOM解析器会先将整个XML文档加载到内存中,然后构建一个树状结构,通过遍历树状结构来访问和操作XML文档的节点。
SAX(简单 API for XML)解析是一种基于事件驱动的解析方法。
它边读取XML文档边解析,并在读取到XML文档的不同部分时触发相应的事件。
相比DOM解析,SAX解析更加高效,特别适用于大型XML文件的解析。
SAX解析器会逐行读取XML文档,当遇到起始标签、结束标签或文本内容时触发相应的事件,并通过事件处理程序来处理这些事件。
选择使用DOM解析还是SAX解析取决于具体的需求。
如果需要对XML文档进行多次操作或查询,DOM解析更方便。
但是,如果处理大型XML文件或只需一次性读取XML数据,SAX解析更高效。
总之,XML格式解析是处理XML数据的重要技术。
通过DOM解析和SAX 解析,我们可以将XML格式的数据转换为程序可以处理的数据结构,实现数据的读取、分析和操作。
xml文件解析方法
xml文件解析方法XML文件解析方法引言:XML(可扩展标记语言)是一种用于存储和传输数据的标记语言,它具有良好的可读性和灵活性,被广泛应用于数据交换和配置文件等领域。
在处理XML文件时,解析是必不可少的环节。
本文将介绍几种常用的XML文件解析方法,包括DOM、SAX和StAX。
一、DOM解析方法DOM(文档对象模型)是一种将整个XML文件以树形结构加载到内存中的解析方法。
DOM解析器将XML文件解析为一个树状结构,通过遍历节点来获取和操作XML文件中的数据。
DOM解析方法的优点是易于理解和使用,可以随机访问XML文件中的任意节点,但缺点是占用内存较大,不适用于大型XML文件的解析。
1. 创建DOM解析器对象:使用标准的Java API,可以通过DocumentBuilderFactory类来创建DOM解析器对象。
2. 加载XML文件:通过DOM解析器对象的parse()方法加载XML文件,将其转化为一个树形结构。
3. 遍历节点:使用DOM解析器对象提供的方法,如getElementsByTagName()、getChildNodes()等,可以遍历XML文件中的各个节点,获取节点的名称、属性和文本内容等信息。
4. 获取节点数据:通过节点对象提供的方法,如getNodeName()、getTextContent()等,可以获取节点的名称和文本内容。
二、SAX解析方法SAX(简单API for XML)是一种基于事件驱动的XML解析方法。
在SAX解析过程中,解析器顺序读取XML文件,当遇到节点开始、节点结束或节点文本等事件时,会触发相应的回调方法。
相比于DOM 解析方法,SAX解析方法具有内存占用小、解析速度快的优点,但缺点是无法随机访问XML文件中的节点。
1. 创建SAX解析器对象:使用标准的Java API,可以通过SAXParserFactory类来创建SAX解析器对象。
2. 实现事件处理器:自定义一个事件处理器,实现SAX解析器提供的DefaultHandler类,并重写相应的回调方法,如startElement()、endElement()和characters()等。
如何使用DOM解析XML文件
如何使用DOM解析XML文件DOM(Document Object Model)是一种用于解析和处理XML文件的常用技术。
DOM API允许开发者以树形的数据结构方式访问和操作XML文件的内容。
1.导入DOMAPI:首先,你需要在你的代码中导入DOMAPI相关的类和方法。
在大多数编程语言中,都有现成的DOM库可供使用。
3. 加载XML文件:将要解析的XML文件加载到解析器中,可以使用解析器的`load(`或`parse(`方法,这个方法会将XML文件读取到内存中。
4. 创建一个DOM树:通过调用解析器的`getDocument(`或`parse(`方法,可以获取解析器对XML文件进行解析后的DOM树对象。
5. 获取根节点:通过DOM树对象的`getDocumentElement(`方法,可以获取XML文件的根节点。
6. 遍历子节点:通过DOM树对象的`getChildNodes(`方法,可以获取根节点的所有子节点。
然后,你可以使用循环遍历这些子节点,获取它们的内容和属性,并进一步操作。
7. 获取节点内容:通过DOM树节点对象的`getNodeValue(`方法,可以获取节点的文本内容。
如果节点有子节点,可以使用`getChildNodes(`方法获取它们的内容。
8. 获取节点属性:通过DOM树节点对象的`getAttribute(`方法,可以获取节点的属性值。
你需要在括号中指定要获取的属性名称。
9. 修改节点内容:通过DOM树节点对象的`setNodeValue(`方法,可以修改节点的文本内容。
10. 修改节点属性:通过DOM树节点对象的`setAttribute(`方法,可以修改节点的属性值。
你需要在括号中指定要修改的属性名称和新值。
11. 创建新节点:通过DOM树节点对象的`createElement(`方法,可以创建一个新节点对象。
你需要在括号中指定节点名称。
12. 添加节点:通过DOM树节点对象的`appendChild(`方法,可以将新节点添加为现有节点的子节点。
读取xml的五种方法
124 * @throws SAXException */
125 public void endElement(String namespaceURI, String localName,String qName) throws SAXException{
28 System.exit(1);
29 }
30 //获得根节点StuInfo
31 Element elmtStuInfo = doc.getDocumentElement();
32 //得到所有student节点
33 NodeList nlStudent = elmtStuInfo.getElementsByTagNameNS(
23 } catch (DOMException dom) {
24Message());
25 System.exit(1);
26 } catch (IOException ioe) {
27 System.err.println(ioe);
在java环境下读取xml文件的方法主要有5种:DOM、SAX、JDOM、JAXB、dom4j
最常用、最好用的dom4j
1. DOM(Document Object Model)
此 方法主要由W3C提供,它将xml文件全部读入内存中,然后将各个元素组成一棵数据树,以便快速的访问各个节点 。 因此非常消耗系统性能 ,对比较大的文档不适宜采用DOM方法来解析。 DOM API 直接沿袭了 XML 规范。每个结点都可以扩展的基于 Node 的接口,就多态性的观点来讲,它是优秀的,但是在 Java 语言中的应用不方便,并且可读性不强。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第六教案
课题:文档对象模型DOM
目的要求:
⏹理解DOM模型
⏹解析XML文档,生成文档对象
⏹操纵DOM模型的对象、接口、属性、方法、事件
重点难点:
⏹重点:使用DOM API提供的对象和接口对XML进行操作,主
要包括查询、添加、修改、删除接点等操作
⏹难点:如何使用API
教学过程:
如图。
作业布置:
一、文档对象模型(DOM)概述
下面,我们将说明如何通过程序访问XML文档。
其中一种方法是通过文档对象模型(Document Object Model,DOM)。
在本章中,我们将介绍文档对象模型,并借助几个程序实例解释它的功能。
1.1什么是文档对象模型(DOM)?
文档对象模型一词在Web浏览器领域并不陌生。
窗口、文档和历史等对象都被认为是浏览器对象模型的一部分。
然而,任何做过Web开发的人都知道各种浏览器实现这些对象的方式不尽相同。
对于如何通过Web访问和操作文档结构这个问题,为了创建更加标准化的方法,W3C提出了目前的W3C DOM规范。
W3C DOM是一种独立于语言和平台的定义,即:它定义了构成DOM的不同对象的定义,却没有提供特定的实现,实际上,它能够用任何编程语言实现。
例如,为了通过DOM访问传统的数据存储,可以将DOM实现为传统数据访问功能之外的一层包装。
利用DOM中的对象,开发人员可以对文档进行读取、搜索、修改、添加和删除等操作。
DOM为文档导航以及操作HTML和XML文档的内容和结构提供了标准函数。
1.2常见的文档模型
常见的文档模型有三类:
线性模型、树型模型、对象模型。
DOM模型是对象模型。
1.3DOM的工作原理及DOM模型结构
当使用DOM对XML文本文件进行操作时,它首先要解析文件,将文件分解为
独立的元素、属性和注释等。
然后,它以节点树的形式(在内存中)创建XML文件的表示。
此后,开发人员可以通过节点树访问文档的内容,并根据需要修改文档。
事实上, DOM执行了更进一步的操作,它将文档中的每个项目看作节点——元素、属性、注释、处理指令,甚至构成属性的文本。
见下面的例子:
通过解析器解析后形成下面结构:
文本
author
books
book
book
author title title
至尊宝倘若时光倒流白晶晶月光宝盒实用大全文档(根节点)
根元素节
点
元
素
下面是另一个例子图:
工作原理可用下图表示:
二、生成XML文档对象模型
见下列代码,它将一个XML 文档装载到内存中,并构建成一棵对象树:
W3C 只是给出了
DOM 的规范,并没有规定其必须在什么平台上实现,因此,具体的应用可根据具体的情况选择不同的DOM 实现库,本书以微软的MSXML 为平台进行讲解。
MSXML 并非完全遵照标准,它提供了一些扩展。
第一行代码生成一个xmlDoc 文档对象,它包含文档中的所有对象;第二句表示文档装载方式是同步还是异步,同步表示在装载文档的同时就进行后续处理,异步表示必须等整个文档装载完成后再进行后续处理;第三局表示开始装载文档。
代码执行完后在xmlDoc 中包含了XML 文档的对象树。
三、DOM 对象
本节讲述DOM中对象和接口如何使用其属性、方法来操纵XML文档。
主要的DOM对象或接口见下表:
下面通过示例对这些对象进行详细说明:
2.1 XML文档对象——DOMDocument对象
DOMDocument对象是XML DOM的基础,通过它可以浏览、查询和修改XML文档的内容和结构。
DOMDocument表示了树的顶层节点,它实现了DOM文档的所有的基本的方法并提供了额外的成员函数来支持XSLT。
它创建了一个文档对象,所有其他的对象都可以基于这个文档对象创建。
DOMDocument对象实现了IXMLDOMDocument接口。
DOMDocument的常用属性如下表:
见下例:
xml文档:
代码:(JavaScript)
DOMDocument的常用方法如下表:
var objXMLDOMNode = oXMLDOMNode.appendChild(newChild)
createNode的语法如下:
var objXMLDOMNode =
oXMLDOMDocument.createNode(Type,name,namespaceURI),其中type是节点类型(1代表元素节点、2代表属性节点、3代表文本节点,其余可查MSXML帮助文档),name是节点名称,namespaceURI指明该节点属于什么名称空间。
见下例:
2.2 XML文档节点——IXMLDOMNode对象
IXMLDOMNode是DOM的基本对象,所有节点都可以看作是一个IXMLDOMNode对象,所有其它DOM对象接口都是继承它的属性和方法。
常用属性见下表:
见下例:
常见方法如下:
2.3 XML文档节点集合——IXMLDOMNodeList对象
IXMLDOMNodeList对象是IXMLDOMNode的有序集合,其中的元素可以通过index访问,起始值是0。
常见属性有:length——返回集合中的节点数
常见的方法有:nextNode、item
见下例:
2.4 XML文档解析错误——IXMLDOMParseError对象
IXMLDOMParseError对象用来返回在解析过程中所出现的错误的详细信息,包括错误号、行号、字符位置和文本描述。
常见属性见下表:
见下例:
2.5 XML文档节点属性——IXMLDOMAttribute对象
IXMLDOMAttribute对象表示相关元素的属性。
常见属性如下:
见下面的例子
2.6 XML文档类型——IXMLDOMDocumentType对象
该接口获得XML文档中关于文档类型定义的信息,它的所有属性都是只读的。
IXMLDOMDocument接口的doctype属性负责识别文件的IXMLDOMDocumentType接口。
这个接口继承了IXMLDOMNode接口,所以它拥有IXMLDOMNode 接口的全部属性与方法。
另外IXMLDOMDocumentType接口也实现了下面的扩展属性:
见下列代码:
XML文档和DTD文档如下:
四、本章总结
●文档模型分为:线性模型、树型模型和对象模型三种,线性模型适合
于静态文本,树型模型适合于动态文本,对象模型在树型模型的基础上加入对象模型特有的属性、事件和方法等。
●DOM把文档作为一个对象,通过编程方式来改变和查询文档。
●DOM主要的对象接口有如下几种:
IXMLDOMDocument/DOMDocument
IXMLDOMNode
IXMLDOMNodeList
IXMLDOMParseError
IXMLDOMAttribute
IXMLDOMDocumentType
第七教案
课题:DOM操作
目的要求:
⏹创建并加载XML文档
⏹通过DOM访问XML文档的元素和属性
⏹通过DOM修改XML文档的内容和结构
⏹学会使用常用的DOM对象
重点难点:
⏹重点:常用DOM对象
⏹难点:DOM对象操作
教学过程:
指导(90分钟),练习(30分钟)
作业布置:。