一、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. C#编程(三十八)----------运算符

    原文链接: http://blog.csdn.net/shanyongxu/article/details/46877353 运算符 类别 运算符 算术运算符 + - * / 逻辑运算符 &  ...

  2. EBS应用版本

    SELECT a.release_name FROM apps.fnd_product_groups a;

  3. java容器的总结

    1.什么是容器? 在程序中,容器是一种用来容纳对象的数据结构,比如说list.set .map.queue. 2.为什么需要容器? 我们为什么需要容器呢?因为在程序中,我们会在任意时刻和任意位置创建任 ...

  4. 逍遥法外第一季/全集How To Get Away With Murder迅雷下载

    英文译名 How To Get Away With Murder (第1季) (2014-09-26首播)ABC.本季看点: <逍遥法外又名:天才刑法班>由<实习医生格蕾>和& ...

  5. fabric工具

    ./cryptogen generate --output="a" --config=crypto-config.yaml # Copyright IBM Corp. All Ri ...

  6. 《图解CSS3:核心技术与案例实战》

    <图解CSS3:核心技术与案例实战> 基本信息 作者: 大漠 丛书名: Web开发技术丛书 出版社:机械工业出版社 ISBN:9787111469209 上架时间:2014-7-2 出版日 ...

  7. 《软件定义网络:SDN与OpenFlow解析》

    <软件定义网络:SDN与OpenFlow解析> 基本信息 原书名:SDN: Software Defined Networks 原出版社: O'Reilly Media 作者: (美)Th ...

  8. Greenplum入门——基础知识、安装、常用函数

    Greenplum入门——基础知识.安装.常用函数 2017年10月08日 22:03:09 在咖啡里溺水的鱼 阅读数:8709    版权声明:本文为博主原创,允许非商业性质转载但请注明原作者和出处 ...

  9. Java正则表达式教程及示例

    本文由 ImportNew - ImportNew读者 翻译自 journaldev.欢迎加入翻译小组.转载请见文末要求. [感谢 @CuGBabyBeaR  的热心翻译.如果其他朋友也有不错的原创或 ...

  10. [转]MCC(移动国家码)和 MNC(移动网络码)

    From : http://blog.chinaunix.net/uid-20484604-id-1941290.html     国际移动用户识别码(IMSI) international mobi ...