共计 2245 个字符,预计需要花费 6 分钟才能阅读完成。
导读 | DOM(Document Object Model 文档对象模型)定义了访问和操作文档的标准方法。 |
XML DOM
XML DOM(XML Document Object Model)定义了访问和操作 XML 文档的标准方法。
XML DOM 把 XML 文档作为树结构来查看。
所有元素可以通过 DOM 树来访问。可以修改或删除它们的内容,并创建新的元素。元素,它们的文本,以及它们的属性,都被认为是节点。
HTML DOM
HTML DOM 定义了访问和操作 HTML 文档的标准方法。
所有 HTML 元素可以通过 HTML DOM 来访问。
加载一个 XML 文件 – 跨浏览器实例
下面的实例把 XML 文档(”note.xml”)解析到 XML DOM 对象中,然后通过 JavaScript 提取一些信息:
实例
<html> | |
<body> | |
<h1>W3Schools Internal Note</h1> | |
<div> | |
<b>To:</b> <span id="to"></span><br /> | |
<b>From:</b> <span id="from"></span><br /> | |
<b>Message:</b> <span id="message"></span> | |
</div> | |
<script> | |
if (window.XMLHttpRequest) | |
{// code for IE7+, Firefox, Chrome, Opera, Safari | |
xmlhttp=new XMLHttpRequest();} | |
else | |
{// code for IE6, IE5 | |
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); | |
} | |
xmlhttp.open("GET","note.xml",false); | |
xmlhttp.send(); | |
xmlDoc=xmlhttp.responseXML; | |
document.getElementById("to").innerHTML= | |
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue; | |
document.getElementById("from").innerHTML= | |
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue; | |
document.getElementById("message").innerHTML= | |
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue; | |
</script> | |
</body> | |
</html> |
重要注释!
如需从上面的 XML 文件(”note.xml”)的
getElementsByTagName("to")[0].childNodes[0].nodeValue
请注意,即使 XML 文件只包含一个
加载一个 XML 字符串 – 跨浏览器实例
下面的实例把 XML 字符串解析到 XML DOM 对象中,然后通过 JavaScript 提取一些信息:
实例
<html> | |
<body> | |
<h1>W3Schools Internal Note</h1> | |
<div> | |
<b>To:</b> <span id="to"></span><br /> | |
<b>From:</b> <span id="from"></span><br /> | |
<b>Message:</b> <span id="message"></span> | |
</div> | |
<script> | |
txt="<note>"; | |
txt=txt+"<to>Tove</to>"; | |
txt=txt+"<from>Jani</from>"; | |
txt=txt+"<heading>Reminder</heading>"; | |
txt=txt+"<body>Don't forget me this weekend!</body>"; | |
txt=txt+"</note>"; | |
if (window.DOMParser) | |
{parser=new DOMParser(); | |
xmlDoc=parser.parseFromString(txt,"text/xml"); | |
} | |
else // Internet Explorer | |
{xmlDoc=new ActiveXObject("Microsoft.XMLDOM"); | |
xmlDoc.async=false; | |
xmlDoc.loadXML(txt); | |
} | |
document.getElementById("to").innerHTML= | |
xmlDoc.getElementsByTagName("to")[0].childNodes[0].nodeValue; | |
document.getElementById("from").innerHTML= | |
xmlDoc.getElementsByTagName("from")[0].childNodes[0].nodeValue; | |
document.getElementById("message").innerHTML= | |
xmlDoc.getElementsByTagName("body")[0].childNodes[0].nodeValue; | |
</script> | |
</body> | |
</html> |
正文完
星哥玩云-微信公众号
