一、DOM 简介,什么是 DOM?

文件对象模型(Document Object Model,简称DOM),是W3C组织推荐的处理可扩展置标语言的标准编程接口。

标记语言,也称置标语言,是一种将文本(Text)以及文本相关的其他信息结合起来,展现出关于文档结构和数据处理细节的电脑文字编码。与文本相关的其他信息(包括例如文本的结构和表示信息等)与原来的文本结合在一起,但是使用标记进行标识

HTML 文档对象模型(HTML Document Object Model)定义了访问和处理 HTML 文档的标准方法。

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

DOM 以树结构表达 HTML 文档。

二、DOM 节点

DOM节点是这样规定的:

1.整个文档是一个文档节点

2.每个 HTML 标签是一个元素节点

3.包含在 HTML 元素中的文本是文本节点

4.每一个 HTML 属性是一个属性节点

5.注释属于注释节点

三、DOM节点树

所有的节点彼此间都存在等级关系。

  1. 除文档节点之外的每个节点都有父节点。<html>
  2. 大部分元素节点都有子节点。<head>
  3. 当节点分享同一个父节点时,它们就是同辈(同级节点)。<head>和<body>
  4. 节点也可以拥有后代,后代指某个节点的所有子节点,或者这些子节点的子节点,以此类推。<head>
  5. 节点也可以拥有先辈。先辈是某个节点的父节点,或者父节点的父节点,以此类推。<html>

四、DOM 节点访问

1.通过文档对象(document)查找并访问节点

•通过使用方法:

document.getElementById()                             返回所有指定元素的id属性

document.getElementByName()                      返回所有指定元素的name属性

document.getElementsByTagName()      返回所有指定元素的标签名称

document.createElement("element")             返回动态创建HTML对象

•通过使用属性:

parentNode     元素的父节点(parentNode)

firstChild           第一个子元素(firstChild)

lastChild                    最后一个子元素(lastChild)

五、DOM 节点信息

每个节点都拥有包含着关于节点某些信息的属性。这些属性是:

nodeName(节点名称)

nodeValue(节点值)

nodeType(节点类型)

1.nodeName 属性含有某个节点的名称。

•元素节点的 nodeName 是标签名称

•属性节点的 nodeName 是属性名称

•文本节点的 nodeName 永远是 #text

•文档节点的 nodeName 永远是 #document

注释:nodeName 所包含的 XML 元素的标签名称永远是大写的

2.nodeValue

对于文本节点,nodeValue 属性包含文本。

对于属性节点,nodeValue 属性包含属性值。

nodeValue 属性对于文档节点和元素节点是不可用的。

3.nodeType

nodeType 属性可返回节点的类型。

以下是最重要的节点类型:

元素类型                 节点类型

1.元素                                1

2.属性                                2

3.文本                                3

4.注释                                8

5.文档                                9

六、Browser 对象

DOM Window:Window 对象表示浏览器中打开的窗口。

如果文档包含框架(frame 或 iframe 标签),浏览器会为 HTML 文档创建一个 window 对象,并为每个框架创建一个额外的 window 对象,所以才保证了打开同一个页面的不同窗口的对象初始化完全不一样。

Window 对象描述:

Window 对象表示一个浏览器窗口或一个框架。在客户端 JavaScript 中,Window 对象是全局对象,所有的表达式都在当前的环境中计算

要引用窗口中的一个框架,可以使用如下语法:
frame[i]           //当前窗口的框架
self.frame[i]     //当前窗口的框架
w.frame[i]         //窗口 w 的框架

要引用一个框架的父窗口(或父框架),可以使用下面的语法:
parent               //当前窗口的父窗口
self.parent        //当前窗口的父窗口
w.parent          //窗口 w 的父窗口

要从顶层窗口含有的任何一个框架中引用它,可以使用如下语法:
top            //当前框架的顶层窗口
self.top     //当前框架的顶层窗口
f.top          //框架 f 的顶层窗口

DOM Navigator:Navigator 对象包含有关浏览器的信息。

DOM Screen:Screen 对象包含有关客户端显示屏幕的信息。

DOM History:History 对象包含用户(在浏览器窗口中)访问过的 URL。

DOM Location:Location 对象包含有关当前 URL 的信息。

七、HTML DOM 对象

DOM Document:

DOM Style:Style对象代表一个单独的样式声明。可从应用样式的文档或元素访问 Style 对象。

1.使用 Style 对象属性的语法:

document.getElementById("id").style.property="值"

2.Style 对象的属性:

•background背景

•border边框和margin边距

•layout布局

•list列表

•杂项

•positioning定位

•printing打印

•scrollbar滚动条

•table表格

•text文本

•规范

2级DOM引进的几个新DOM模块来处理新的接口类型:

DOM视图:描述跟踪一个文档的各种视图(使用CSS样式设计文档前后)的接口;

DOM事件:描述事件接口;

DOM样式:描述处理基于CSS样式的接口;

DOM遍历与范围:描述遍历和操作文档树的接口;

HTML DOM 基础知识,成为javascript晋级高手的必备手册的更多相关文章

  1. HTML DOM基础知识

    HTML DOM基础知识 一.什么是DOM? 1.HTML DOM 定义了访问和操作HTML文档的标准方法. 2.HTML DOM 把 HTML 文档呈现为带有元素.属性和文本的树结构(节点树). 3 ...

  2. 【JQuery基础知识/statusCode(状态码)】---初学者必备

    今天,给大家分享一下JQuery的基础知识,简单介绍一下JQuery高级_Ajax,和我们常见的一些statusCode(状态码)~~~ 如果存在错误,请大家多多指正留言~小女子在此谢过! 一.JQu ...

  3. javascript中DOM基础知识介绍

    1.1.     基本概念 1.1.1.      DOM DOM Document Object Model 文档对象模型 就是把HTML文档模型化,当作对象来处理 DOM提供的一系列属性和方法可以 ...

  4. 【基础知识】JavaScript基础

    [学习日记]JavaScript基础 1,一般写在<head></head>中(其实可以放到任意位置); 2,弹出对话框 <scripttype="text/j ...

  5. DOM基础知识整理

    --<JavaScript高级程序设计>Chapter10学习笔记 一.节点层次 1.Node类型 1)(Node).nodeType属性 节点nodeType属性有12种. 检测node ...

  6. Javascript--HTML DOM基础知识

    1.HTML DOM是什么,以及它的作用: w3c对DOM有一系列的解释和定义,用自己理解的话来说就是:HTML DOM是html的标准对象模型,可以使JavaScript去操作(获取,修改,删除,添 ...

  7. DOM基础知识

    DOM BOMDOM 文档对象模型 document.BOM 浏览器界面上所有内容 broder object.没有括号属性.()方法 DOM写法 document.作用 做特效 找到 摘出元素 增删 ...

  8. 【javascript基础知识】javascript中的转义序列和特殊数值常量

    javascript的转义序列 \0 NUL字符(\u0000) \b 退格符(\u0008) \t 水平制表符(\u0009) \n 换行符(\u000A) \v 垂直制表符(\u000B) \f ...

  9. JS基础知识:Javascript事件触发列表

    Javascript是一种由Netscape的LiveScript发展而来的原型化继承的基于对象的动态类型的区分大小写的客户端脚本语言,主要目的是为了解决服务器端语言. JavaScript使我们有能 ...

随机推荐

  1. Java Calendar,Date,DateFormat,TimeZone,Locale等时间相关内容的认知和使用(3) Date

    本章主要介绍Date类,并通过示例学习如何使用它.最后,讲解一下UTC.GMT和时区的关系. Date 介绍 Date 定义 public class Date implements java.io. ...

  2. Maven settings配置中的mirrorOf

    原文地址:http://blog.csdn.net/isea533/article/details/21560089 使用maven时,从来没仔细注意过setting配置节点的作用,直到今天配置总是不 ...

  3. 组织安全性SQL

    BEGIN mo_global.set_policy_context ('S', '&组织ID'); END; SELECT * FROM hr_organization_units_v;   ...

  4. 将CAGradientLayer当做mask使用

    将CAGradientLayer当做mask使用 效果 源码 https://github.com/YouXianMing/Animations // // CAGradientView.h // M ...

  5. 自动移动的ImageView

     图片会慢慢的向左移动,到头了后,再循环 其实这个效果和屏幕背景图片的效果差不多,屏幕背景图是随着滑动来慢慢的滚动,这是自己每个n秒开始动.实现方式自然是用自定的控件了.这次继承的是ImageView ...

  6. Kubernetes基础:查看状态、管理服务

    目标 了解Kubernetes Pod 了解Kubernetes Node 学习如何调试部署问题 了解如何通过Service暴露应用 Kubernetes Pods 在Kubernetes中创建一个D ...

  7. 获取客户端网卡MAC地址和IP地址实现JS代码

    获取客户端网卡MAC地址和IP地址实现JS代码 作者: 字体:[增加 减小] 类型:转载   获取客户端的一些信息,如IP和MAC,以结合身份验证,相信很多人都会这样做吧,我们这里用Javascrip ...

  8. Java命令学习系列(六)——jinfo

    jinfo可以输出java进程.core文件或远程debug服务器的配置信息.这些配置信息包括JAVA系统参数及命令行参数,如果进程运行在64位虚拟机上,需要指明-J-d64参数,如:jinfo -J ...

  9. HashMap 与 ConcurrentHashMap

    1. HashMap 1) 并发问题 HashMap的并发问题源于多线程访问HashMap时, 如果存在修改Map的结构的操作(增删, 不包括修改), 则有可能会发生并发问题, 表现就是get()操作 ...

  10. Spring Boot工程结构推荐程结构(最佳实践)

    工程结构(最佳实践) Spring Boot框架本身并没有对工程结构有特别的要求,但是按照最佳实践的工程结构可以帮助我们减少可能会遇见的坑,尤其是Spring包扫描机制的存在,如果您使用最佳实践的工程 ...