站内搜索:
首页 >> 前端 >> 内容
DOM文档对象模型介绍

时间:2017/8/30 8:28:00

DOM(文档对象模型)是针对HTML和XML文档的一个API(应用程序编程接口)。DOM描绘了一个层次变化的节点树,允许开发人员添加、移除和修改页面的某一部分。

一、节点层次

在HTML页面中,文档元素始终都是

元素。

1. Node类型

javascript中的所有节点类型都继承自Node类型,因此所有节点类型都共享着相同的基本属性和方法。
(1)nodeType属性:用于表明节点的类型。

常量
Node.ELEMENT_NODE 1
Node.ATTRIBUTE_NODE 2
Node.TEXT_NODE 3
Node.CDATA_SECTION_NODE 4
Node.ENTITY_REFERENCE_NODE 5
Node.ENTITY_NODE 6
Node.PROCESSING_INSTRUCTION_NODE 7
Node.COMMENT_NODE 8
Node.DOCUMENT_NODE 9
Node.DOCUMENT_TYPE_NODE 10
Node.DOCUMENT_FRAGMENT_NODE 11
Node.NOTATION_NODE 12

需要注意的是,在IE中不支持常量

if(someNode.nodeType === 1){    // 不使用Node.ELEMENT_NODE
    console.log("node is an element");
}

(2)nodeName和nodeValue

if(someNode.nodeType === 1){
    var name = someNode.nodeName,   // 元素的标签名
        value = someNode.nodeValue; // null
    console.log(name, value);
}

(3)节点关系
文档中所有节点之间都存在着这样或那样的关系。节点间的各种关系可以用传统的家族关系来描述,相对于把文档树比喻成家谱。

属性 说明
childNodes 直接子元素;nodeList对象,保存一组有序节点,可通过位置访问
parentNode 文档树中的父节点
previousSibling 前一个兄弟节点
nextSibling 后一个兄弟节点
firstChild 第一个子节点
lastChild 最后一个子节点
ownerDocument 整个文档的文档节点Document

说明:

的引用 document.body; // 获取对的引用 /* 以本人blog为例 */ document.title; // 获取页面title信息:"李刚的学习专栏 - 博客频道 - CSDN.NET" document.URL; // 获取页面完整的URL:"https://blog.csdn.net/ligang2585116" document.domain; // 获取页面的域名:"blog.csdn.net" document.referrer; // 获取链接到当前页面的那个页面的URL:直接访问为空!

  • 上一篇:前端html当窗口缩小,2个图片会重叠,怎么把一张图片放在上层
  • 下一篇:浏览器缓存的相关使用
  • 返回顶部