`

js学习之HTML DOM的一些基础概念

 
阅读更多
经过近一个星期,总算把w3chool上的HTML DOM的实例差不多看了一遍,因为本身对其中的很多都用过,所以看起来也很快,现在就再系统的回顾下HTML DOM的一些概念和基础的东西,大部分都是从w3school上看到的

什么是DOM


DOM是w3c(万维网联盟)的标准
DOM定义了访问HTML和XML的标准

"W3C文档对象模型(DOM)是中立于语言和平台的接口,它允许程序和脚本动态的访问和更新文档的结构,内容和样式"

W3C DOM 标准被分为 3 个不同的部分:
    ● 核心DOM  - 针对任何结构化文档的标准模型
    ● XML DOM  - 针对XML文档的标准模型
    ● HTML DOM - 针对HTML文档的标准模型

ps:DOM是 Document Object Model (文本对象模型)的缩写


什么是XML DOM

XML DOM定义了所有xml元素的对象和属性以及访问他们的方法

如果你想学习XML DOM 可以访问 http://www.w3school.com.cn/xmldom/index.asp


什么是HTML DOM


HTML DOM:
    ● HTML的标准对象模型
    ● HTML的标准编程接口
    ● W3C标准
HTML DOM 定义了所有HTML元素的对象和属性以及访问他们的方法,换句话说,HTML DOM是关于如果获取,删除,修改HTML元素的标准


                   下面就是针对HTML DOM的一些方法属性的介绍

HTML DOM节点


在HTML DOM中,所有事物都是节点,DOM被视为节点树的HTML



DOM节点

据W3C的HTML DOM标准,HTML文档中的所有内容都是节点

   ● 整个文档是一个文档节点
   ● 每个 HTML 元素是元素节点
   ● HTML 元素内的文本是文本节点
   ● 每个 HTML 属性是属性节点
   ● 注释是注释节点


HTML DOM节点树



根据HTML DOM标准,树中的所有节点都可以通过javascript进行访问,所有HTML 元素(节点)均能被修改 也可以 删除 和 新增新的节点


节点父子和同胞


下面的图片展示了节点树的一部分,以及节点之间的关系:




父(parent)、子(child)和同胞(sibling)等术语用于描述这些关系。父节点拥有子节点。同级的子节点被称为同胞(兄弟或姐妹)。

   ● 在节点树中,顶端节点被称为根(root)
   ● 每个节点都有父节点、除了根(它没有父节点)
   ● 一个节点可拥有任意数量的子
   ● 同胞是拥有相同父节点的节点


请看下面的 HTML 片段:

<html>
  <head>
    <title>DOM 教程</title>
  </head>
  <body>
    <h1>DOM 第一课</h1>
    <p>Hello world!</p>
  </body>
</html>


从上面的 HTML 中:

   ●  <html> 节点没有父节点;它是根节点
   ● <head> 和 <body> 的父节点是 <html> 节点
   ●  文本节点 "Hello world!" 的父节点是 <p> 节点

并且:

   ●  <html> 节点拥有两个子节点:<head> 和 <body>
   ●  <head> 节点拥有一个子节点:<title> 节点
   ●  <title> 节点也拥有一个子节点:文本节点 "DOM 教程"
   ●  <h1> 和 <p> 节点是同胞节点,同时也是 <body> 的子节点

并且:

   ●  <head> 元素是 <html> 元素的首个子节点
   ●  <body> 元素是 <html> 元素的最后一个子节点
   ●  <h1> 元素是 <body> 元素的首个子节点
   ●  <p> 元素是 <body> 元素的最后一个子节点


注意:

DOM 处理中的常见错误是希望元素节点包含文本。

在本例中:<title>DOM 教程</title>,元素节点 <title>,包含值为 "DOM 教程" 的文本节点。

可通过节点的 innerHTML 属性来访问文本节点的值。



HTML DOM 方法


方法即是我们可以在节点(HTML 元素)上执行的动作。


[b]编程接口[/b]

可通过 JavaScript (以及其他编程语言)对 HTML DOM 进行访问。

所有 HTML 元素被定义为对象,而编程接口则是对象方法和对象属性。

方法是您能够执行的动作(比如添加或修改元素)。

属性是您能够获取或设置的值(比如节点的名称或内容)。

getElementById() 方法返回带有指定 ID 的元素:

例: var element=document.getElementById("intro");


HTML DOM 对象 - 方法和属性

一些常用的 HTML DOM 方法:
    ●  getElementById(id) - 获取带有指定 id 的节点(元素)
    ●  appendChild(node) - 插入新的子节点(元素)
    ●  removeChild(node) - 删除子节点(元素)

一些常用的 HTML DOM 属性:
    ●  innerHTML - 节点(元素)的文本值
    ●  parentNode - 节点(元素)的父节点
    ●  childNodes - 节点(元素)的子节点
    ●  attributes - 节点(元素)的属性节点


下面也是一些常用方法:




下面是一些属性介绍:

innerHTML 属性

获取元素内容的最简单方法是使用 innerHTML 属性。
innerHTML 属性对于获取或替换 HTML 元素的内容很有用。

实例:
<html>
<body>

<p id="intro">Hello World!</p>

<script>
var txt=document.getElementById("intro").innerHTML;
document.write(txt);
</script>

</body>
</html>


在上面的例子中,getElementById 是一个方法,而 innerHTML 是属性。
innerHTML 属性可用于获取或改变任意 HTML 元素,包括 <html> 和 <body>。


nodeName 属性

nodeName 属性规定节点的名称。

    ● nodeName 是只读的
    ● 元素节点的 nodeName 与标签名相同
    ● 属性节点的 nodeName 与属性名相同
    ● 文本节点的 nodeName 始终是 #text
    ● 文档节点的 nodeName 始终是 #document


注释:nodeName 始终包含 HTML 元素的大写字母标签名。

nodeValue 属性

nodeValue 属性规定节点的值。

    ● 元素节点的 nodeValue 是 undefined 或 null
    ● 文本节点的 nodeValue 是文本本身
    ● 属性节点的 nodeValue 是属性值


nodeType 属性

nodeType 属性返回节点的类型。nodeType 是只读的。

比较重要的节点类型有:
元素类型 NodeType
元素 1
属性 2
文本 3
注释 8
文档 9
  • 大小: 4.1 KB
  • 大小: 3.6 KB
  • 大小: 13.1 KB
分享到:
评论

相关推荐

    js+dom编程艺术资源

    《JavaScript DOM编程艺术:第2版》讲述了JavaScript、DOM 和HTML5 的基础知识,着重介绍DOM 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端Web 开发工作都非常重要。本书将...

    JavaScriptDOM编程艺术.中文版.完整书签

     本书讲述了JavaScript和DOM的基础知识,但重点放在DOM编程技术背后的思路和原则:预留退路、循序渐进和以用户为中心等,这些概念对于任何前端Web开发工作都非常重要。本书将这些概念贯穿在书中的所有代码示例中,...

    JavaScript+DOM编程艺术.pdf

    《javascript dom编程艺术:第2版》讲述了javascript、dom 和html5 的基础知识,着重介绍dom 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端web 开发工作都非常重要。本书将...

    [JavaScript.DOM编程艺术(第2版)+源码

    javascript dom编程艺术:第2版》讲述了javascript、dom 和html5 的基础知识,着重介绍dom 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端web 开发工作都非常重要。本书将这些...

    JavaScript.DOM编程艺术(第2版) 2-4

    《javascript dom编程艺术:第2版》讲述了javascript、dom 和html5 的基础知识,着重介绍dom 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端web 开发工作都非常重要。本书将...

    JavaScript DOM 编程艺术(第二版)

    本书讲述了JavaScript、DOM和HTML5的基础知识,着重介绍了DOM编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端Web开发工作都非常重要。本书将这些概念贯穿在书中的所有代码示例...

    前端html+css+js学习指南图谱

    该图谱涵盖了HTML、CSS和JavaScript这三个前端开发的基础技术,包括它们的基本概念、语法规则、常用标签和属性、样式定义和布局、DOM操作等内容。通过学习指南图谱,可以帮助初学者系统地了解和学习前端开发的基础...

    JavaScript DOM编程艺术

    讲述了JavaScript、DOM 和HTML5 的基础知识,着重介绍DOM 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端Web 开发工作都非常重要。本书将这些概念贯穿在书中的所有代码示例中...

    JavaScript.DOM编程艺术(第2版)(书签)mobile

    本书讲述了JavaScript、DOM 和HTML5 的基础知识,着重介绍DOM 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端Web 开发工作都非常重要。本书将这些概念贯穿在书中的所有代码...

    前端代码学习(HTML+CSS+JS进阶学习全资料)

    JavaScript模块包含了JavaScript语法和数据类型、DOM操作和事件处理,以及异步编程的重要概念,包括Promise和Async/Await。此外,该资料还包括关于Bootstrap框架的代码资料,涵盖了基础组件和样式,响应式设计的实践...

    javascript完全学习手册1 源码

    第1篇 JavaScript基础篇 第1章 JavaScript简介 1 1.1 JavaScript概述 1 1.1.1 什么是JavaScript 1 1.1.2 JavaScript的基本特点 2 1.1.3 常用的Web开发语言 3 1.2 JavaScript的应用 4 1.2.1 客户端应用 5 1.2.2 ...

    JavaScript.DOM编程艺术(第2版) 1-4

    《javascript dom编程艺术:第2版》讲述了javascript、dom 和html5 的基础知识,着重介绍dom 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端web 开发工作都非常重要。本书将...

    JavaScript.DOM编程艺术(第2版) 3-4

    《javascript dom编程艺术:第2版》讲述了javascript、dom 和html5 的基础知识,着重介绍dom 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端web 开发工作都非常重要。本书将...

    JavaScript.DOM编程艺术(第2版) 4-4

    《javascript dom编程艺术:第2版》讲述了javascript、dom 和html5 的基础知识,着重介绍dom 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端web 开发工作都非常重要。本书将...

    JavaScript:DOM编程艺术(第2版)

    《javascript dom编程艺术:第2版》讲述了javascript、dom 和html5 的基础知识,着重介绍dom 编程技术背后的思路和原则:平稳退化、渐进增强和以用户为中心等。这些概念对于任何前端web 开发工作都非常重要。本书将...

    html5入门到精通 视频教程

    JavaScript基础语法07_连接符和转义字符 JavaScript基础语法08_算数运算符 JavaScript基础语法09_赋值运算符 JavaScript基础语法10_关系运算符 JavaScript基础语法11_条件运算符 JavaScript基础语法12_逻辑运算符 ...

    JS中DOM元素的操作等基础知识笔记

    DOM的概念和作用2.节点树3.DOM选择器:(查询、创建、添加,修改,删除)4.DOM的基本操作①.添加②.插入③.替换④.删除5.DOM节点类型(元素和文本)6.DOM属性节点7.DOM高级操作 1. DOM的概念和作用  DOM 是 ...

    javascript完全学习手册2 源码

    第1篇 JavaScript基础篇 第1章 JavaScript简介 1.1 JavaScript概述 1.1.1 什么是JavaScript 1.1.2 JavaScfipt的基本特点 1.1.3 常用的Web开发语言 1.2 JavaScript的应用 1.2.1 客户端应用 1.2.2 服务器...

    疯狂HTML 5+CSS 3+JavaScript讲义(第2版)+源代码

    15.1 事件模型的基本概念 498 15.2 绑定事件处理函数 499 15.3 事件处理函数的执行环境 505 15.4 事件类型 521 15.5 本章小结 534 第16章 本地存储与离线应用 535 16.1 Web Storage 536 16.2 Indexed数据库...

    [JavaScript.Enlightenment(2012.12)].Cody.Lindley.文字版.pdf

    通过《DOM启蒙》,读者将学习如何通过文档对象模型(DOM)更有效率地操作HTML,而无需DOM操作库的帮助。作者Cody Lindley(jQuery手册)用菜谱风格的代码示例,用演示多种节点对象的工作方式,带你领略现代DOM理念。...

Global site tag (gtag.js) - Google Analytics