`

JavaScript DOM学习笔记2——DOM的使用

 
阅读更多

1.HTML中的DOM

        W3C再开发XML DOM的同时,还针对XHTML以及HTML开发了DOM。这个DOM定义了一个HTMLDocument和HTMLElement作为这种实现的基础。每个HTML元素由对应的HTMLElement类型来表示。例如HTMLDivElement代表<div>标签。

2.访问相关节点

        document对象既是BOM的一部分,也是DOM的一部分。因此DOM的处理过程大多数都是以document对象开始的。直接看代码吧。有点特别的东西都在注释里进行了说明。

<html>
	<head>
		<title>DOM Example</title>
		<script type="text/javascript">
			function domTest() {
				var oHtml = document.documentElement;//返回HTML的<html>标签对应的元素
				var oHead = oHtml.firstChild;
				var oBody = oHtml.lastChild;
				//var oHead = oHtml.childNodes[0];
				//var oHead = oHtml.childNodes.item(0);
				//var oBody = oHtml.childNodes[1];
				//var oBody = oHtml.childNodes.item(1);
				//HTML DOM 预定义了body属性直接指向<body>标签
				//var oBody = document.body;
				alert(oHtml.childNodes.length);
				
				alert(oHead.parentNode == oHtml);
				alert(oBody.parentNode == oHtml);
				alert(oBody.previousSibling == oHead);
				alert(oHead.nextSibling == oBody);
				alert(oHead.ownerDocument == document);//ownerDocument属性指向该文档对象

			}
		</script>
	</head>
	<body onload="domTest()">
		<p>Hello,World!</p>
		<p>Isn't thhis exciting?</p>
		<p>You are learing to use DOM!</p>
	</body>
</html>

 

3.检测DOM节点类型

        可以通过nodeType属性来检测节点的类型。上一篇博客中已经提到了12中节点类型,并且举例说明了。这里不再赘述。

        检测方法一:返回的是Node接口中定义的节点类型常量代表的数字。

alert(document.nodeType);//输出9
alert(document.documentElement.nodeType);//输出1

 

        检测方法二:使用Node中的常量匹配来检测节点类型。  

alert(document.nodeType == Node.DOCUMENT_NODE); //输出true
alert(document.documentElement.nodeType == Node.ELEMENT_NODE);//输出true

 

但是上面的第二种方法在IE以外的浏览器上基本上都没问题,IE则不行。我测试了一下,既是用IE8也还会报错。那么可以自定义匹配节点类型的常量来解决这个问题。见代码:

if(typeof Node == "undefined") {
	var Node = {
		ELEMENT_NODE:1,
		ATTRIBUTE_NODE:2,
		TEXT_NODE:3,
		CDATA_SECTION_NODE:4,
		ENTITY_REFERENCE_NODE:5,
		ENTITY_NODE:6,
		PROCESSING_INSTRUCTION_NODE:7,
		COMMENT_NODE:8,
		DOCUMENT_NODE:9,
		DOCUMENT_TYPE_NODE:10,
		DOCUMENT_FRAGMENT_NODE:11,
		NOTATION_NODE:12
	};
}

 

 

参考书目:

《JavaScript高级编程》Nicolas C. Zakas著, 曹力 张欣 等译。

 

 

1
3
分享到:
评论

相关推荐

    JavaScript HTML DOM学习笔记.emmx

    从菜鸟教程上学习的关于js的学习笔记,可以用于参考学习使用,脑图样式,浏览更方便,有需要的同学可以带走

    狂神Java学习笔记————前端入门——html、css、JavaScript学习代码

    【狂神Java学习笔记——前端入门——HTML、CSS、JavaScript学习代码】是针对初学者的一份详实的学习资料,这份笔记记录了跟随B站知名up主“遇见狂神说”的java系列视频中关于前端开发的基础内容。笔记内容不仅与视频...

    比较详细的javascript DOM 学习笔记第1 2页.docx

    ### JavaScript DOM 学习笔记知识点总结 #### 一、DOM基础概述 DOM(Document Object Model)文档对象模型是一种处理可扩展标记语言的标准编程接口。它提供了结构化文档(如HTML和XML)的标准方法来访问、修改文档...

    web学习笔记 —— javascript基础

    这篇“web学习笔记——javascript基础”将带你走进JavaScript的世界,理解其基本概念和常用语法。 JavaScript语法基础: 1. 变量:在JavaScript中,变量用于存储数据。声明变量使用`var`关键字,例如`var myVar = ...

    前端学习(六)——javascript学习笔记(四)HTML DOM.xmind

    前端学习(六)——javascript学习笔记(四)HTML DOM.xmind

    javaScript DOM编程艺术2版学习笔记

    在这个学习笔记中,涵盖了从基础到高级的JavaScript和DOM操作技巧,一共涉及1~9章的内容。以下是对这些章节知识点的详细阐述: **第1章:JavaScript简介** 本章介绍了JavaScript的基本概念,包括它是一种解释型、弱...

    韩顺平javascript 韩顺平js-DOM学习笔记

    韩顺平js-DOM学习笔记

    javascript入门学习笔记

    这份"javascript入门学习笔记"旨在为初学者提供一个全面且深入的JavaScript学习路径。 一、基础语法 JavaScript的基础包括变量、数据类型、操作符、流程控制等。变量用于存储数据,数据类型分为基本类型(如字符串...

    传播智客扬中科老师讲的DOM 学习笔记

    这一过程涉及了`insertRow`和`insertCell`方法的使用,展示了如何动态创建和插入DOM节点。 ### 动态生成DOM节点 第二个示例中,`createElement`方法被用来创建新的`&lt;tr&gt;`和`&lt;td&gt;`节点,然后将它们添加到DOM树中。...

    JS基本功DOM学习笔记

    在"Javascript_DOM学习笔记+代码"中,你可能会发现具体的示例代码和练习,这些可以帮助你更好地理解和实践上述概念。通过深入学习和实践,你将能够熟练地操纵网页内容,创建动态交互的Web应用。

    JavaScript-学习笔记.pdf

    以上是JavaScript学习笔记中提到的一些核心知识点,通过对这些知识点的理解和熟练应用,可以为进一步学习和掌握JavaScript打下坚实的基础。在实际开发过程中,结合具体的项目需求,这些知识会得到更深入的拓展和应用...

    js DOM学习笔记11

    JavaScript DOM 学习笔记 JavaScript DOM(Document Object Model)是 HTML 和 XML 文档的编程接口,它提供了一种访问和操作文档结构和内容的方式。DOM 将文档表示为一个树状结构,其中每个节点都代表文档中的一个...

    JavaScript DOM编程艺术(中文第二版)学习笔记

    总的来说,JavaScript DOM编程艺术这本书涵盖了JavaScript基础、DOM操作以及实际应用,是学习网页动态交互和JavaScript编程的重要资源。通过学习,开发者能够熟练地创建交互式、动态的网页内容。

    比较详细的javascript DOM 学习笔记第1/2页

    本篇学习笔记主要探讨了DOM的基础知识,包括不同类型的节点以及如何访问和操作这些节点。 1. **DOM节点层次** - **Document**:作为整个文档的顶级节点,它包含了文档的全部内容。 - **DocumentType**:表示文档...

    JavaScript dom编程艺术:个人笔记.pdf

    1. JavaScript基础知识:学习DOM编程之前,首先要掌握JavaScript的基础语法,包括变量声明、数据类型、控制结构(如if语句和循环)、函数定义与调用等。理解这些基础知识对于后面深入学习DOM操作至关重要。 2. DOM...

    JavaScript基础学习笔记

    JavaScript 基础学习笔记 本资源摘要信息基于黑马视频记录的学习笔记,涵盖了 JavaScript 基础知识点,包括 HTML、CSS、JavaScript、DOM、事件处理等内容。 HTML 和 CSS 基础 * HTML 结构:head、body、title、...

    Java JDK 6学习笔记——ppt简体版.rar

    通过"Java JDK 6学习笔记——ppt简体版",学习者可以系统地学习到如何使用JDK 6进行开发,包括环境配置、基本语法、类库使用、异常处理、IO流、网络编程、多线程等各个方面。PPT格式通常直观易懂,便于快速理解和...

    JavaScript入门学习笔记

    JavaScript入门学习笔记

    JavaScript_DOM编程—新版学习笔记.txt

    ### JavaScript DOM 编程知识点详解 #### 一、DOM 基础概念 **DOM (Document Object Model)** 是一种用于表示 HTML 和 XML 文档的标准对象模型。它将文档定义为节点树,允许开发者通过编程方式访问和修改这些节点...

Global site tag (gtag.js) - Google Analytics