`

简单通俗讲解DOM

阅读更多

在开始之前先说一点,DOM是非常容易理解的,但是大家说的太官方,让人很是难于理解,我们就用非常简单的语言翻译一遍。加深对DOM的理解,从而对它有一个全面的认识。

 

什么是DOM

 

DOM的全称是DocumentObjectModel,即文档对象模型,它允许脚本控制Web页面、窗口和文档。

如果没有DOM,JavaScript将是另外一种脚本语言;而有了DOM,它将成为制作动态页面的强有力工具。DOM不是JavaScript语言的一部分,而是内置在浏览器中的一个应用程序接口。当然,我们可以简单的理解为一种用于HTML和XML文档的编程接口。它给文档提供了一种结构化的表示方法,可以改变文档的内容和呈现方式。

 

DOM(文档对象模型)是一组用来描述脚本怎样与结构化文档进行交互和访问的web标准。他的功能是把浏览器支持的文档(包括HTMLXMLXHTML)当作一个对象来解析。DOM实际上是一个操作文档里面所包含的内容的一个编程的API,允许开发人员从文档中读取、搜索、修改、增加和删除数据。DOM是与平台和语言无关的,也就是说只要是支持DOM的平台和编程语言,你都可以用来编写文档。

 

DOM定义了一系列对象、方法和属性,用于访问、操作和创建文档中的内容、结构、样式以及行为。每一个网页元素(一个HTML标签)都对应着一个对象(object,所谓“对象”,用白话说就是“东西”。)。网页上的标签是一层层嵌套的,最外面的一层是<HTML>,文档对象模型也这样一层层嵌套着,但是通常被理解成一棵树的形状。树根是window或document对象,相当于最外层的标签的外围,也就是整个文档。树根之下(这棵树的图通常是倒着画,就好像遗传谱系或者家谱那样。树根就是唯一的共同祖先)是子一级的对象,子对象也有它自己的子对象,除了根对象以外,所有的对象都有自己的父对象,同一对象的子对象之间就是兄弟的关系。如果大家没有见过家谱,应该知道一个公司的组织架构。

 

 

DOM实际上是以面向对象方式描述的文档模型。DOM定义了表示和修改文档所需的对象、这些对象的行为和属性以及这些对象之间的关系。可以把DOM认为是页面上数据和结构的一个树形表示,不过页面当然可能并不是以这种树的方式具体实现。通过JavaScript,可以重构整个 HTML 文档。可以添加、移除、改变或重排页面上的项目。

要改变页面的某个东西,JavaScript 就需要获得对 HTML 文档中所有元素进行访问的入口。这个入口连同对 HTML 元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM)。

 

DOM和JavaScript

我们用JavaScript对网页进行的所有操作都是通过DOM进行的。如何访问DOM中的对象?

先是父对象名,后面接着是子对象名,使用圆点隔开。

 

<span style="font-size:18px;">window.document.write("hi!how are you!")</span>

DOM操作Checkbox实例

 

 

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>DOM操作checkbox</title>
<script type="text/javascript">
	//当html页面加载完后;执行以下函数
	window.onload = function() {
		document.getElementById("btn").onclick = function() {
			var inputs = document.getElementsByTagName("input");
			for ( var i = 0; i < inputs.length; i++) {
				if (inputs[i].type = "checkbox") {
					if (inputs[i].value % 2 != 0) {
						inputs[i].checked = true;
					}
				}
			}
		}
	}
</script>
</head>
<body>
	<input type="checkbox" value="1" />
	<input type="checkbox" value="2" />
	<input type="checkbox" value="3" />
	<input type="checkbox" value="4" />
	<input type="checkbox" value="5" />
	<input type="checkbox" value="6" />
	<input type="checkbox" value="7" />
	<input type="checkbox" value="8" />
	<input type="checkbox" value="9" />
	<input type="checkbox" value="10" />
	<button id="btn">选中奇数</button>
</body>
</html>

单机按钮显示效果:

 




 

分享到:
评论

相关推荐

    文档对象模型DOM通俗讲解

    DOM是非常容易理解的,但是大家说的太官方,让人很是难于理解,我们就用非常简单的语言翻译一遍,感兴趣的朋友可以参考下

    jQuery基础教程 第四版

    本书前 6 章以通俗易懂 的方式讲解了 jQuery 的核心组件,包括 jQuery 的选择符、事件、动画、DOM 操作、Ajax 支持等。第 7 章 和第 8 章介绍了 jQuery UI、jQuery Mobile 及利用 jQuery 强大的扩展能力开发自定义...

    JQuery基础教程(第4版)

    的方式讲解了jQuery 的核心组件 包括jQuery 的选择符 事件 动画 DOM 操作 Ajax 支持等 第7 章 , 、 、 、 、 。 和第8 章介绍了jQuery UI jQuery Mobile 及利用jQuery 强大的扩展能力开发自定义插件 随后的几章...

    jQuery基础教程(第四版)

    本书前6章以通俗易懂的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章和第8章介绍了jQuery UI、jQuery Mobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更加...

    jQuery (4th)

    本书前6章以通俗易懂的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章和第8章介绍了jQuery UI、jQuery Mobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更加...

    vue.js中ref和$refs的使用及示例讲解

    vue.js中文社区文档上的说明已经就比较通俗易懂了,其实我们可以这么理解,ref和$refs其实就是用来获取/操作DOM元素的;类似于jquey中的$(“.xxx”); 那么我们如何使用ref和$refs呢? ref可以直接加在HTML标签上,...

    jQuery基础教程(第4版)李松峰(译) 中文 非扫描版 高清带书签

    本书前6章以通俗易懂的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章和第8章介绍了jQuery UI、jQuery Mobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更加...

    jQuery基础教程

    的方式讲解了jQuery 的核心组件,包括jQuery 的选择符、事件、动画、DOM 操作、Ajax 支持等。第7 章 和第8 章介绍了jQuery UI、jQuery Mobile 及利用jQuery 强大的扩展能力开发自定义插件。随后的几章更 加深入地...

    jQuery基础教程--第四版(2013年出版)

    的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章 和第8章介绍了jQuery UI、jQuery Mobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更 加深入地探讨了...

    jQuery基础教程(第四版),完整高清版

    本书前6章以通俗易懂的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章和第8章介绍了jQuery UI、jQuery Mobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更加...

    jQuery jQuery第四版PDF

    本书前6章以通俗易懂的方式讲解了jQuery的核心组件,包括jQuery的选择符、事件、动画、DOM操作、Ajax支持等。第7章和第8章介绍了jQuery UI、jQuery Mobile及利用jQuery强大的扩展能力开发自定义插件。随后的几章更加...

    vue.js中ref及$refs的使用方法解析

    vue.js中文社区文档上的说明已经就比较通俗易懂了,其实我们可以这么理解,ref和$refs其实就是用来获取/操作DOM元素的;类似于jquey中的$(“.xxx”); 那么我们如何使用ref和$refs呢? ref可以直接加在HTML标签上,...

    JavaScript零基础入门(精品课)【2020新版】

    以通俗易懂的方式全面讲解JavaScript技术,以知识讲解+实战案例的方式帮您快速入门! 课程内容包括: 1.JavaScript简介 2.JavaScript基本用法 3.变量和数据类型 4.运算符 5.数据类型转换 6.选择结构、循环...

    跟汤老师学Java(第24季):JavaScript

    本课程从零开始,以通俗易懂的方式讲解JavaScript技术,手把手教你掌握每一个知识点。 课程内容包括: 1.JavaScript简介 2.JavaScript引用方式 3.JavaScript核心语法(变量、数据类型、运算符、选择结构、循环...

    jQuery基础教程(中文第2版)完整高清pdf

    本书前6章以通俗易懂的方式介绍了jQuery的基本概念,主要包括jQuery的选择符、事件、效果、 DOM操作、AJAX支持等。随后3章从理论到实践,通过表格操作、构建功能型表单、实现滑移和翻转效果等实例,深入浅出地讲解了...

Global site tag (gtag.js) - Google Analytics