HTML DOM 对象

  本篇主要介绍HTML DOM 对象:Document、Element、Attr、Event等4个对象。

目录

1. Document 对象:表示文档树的根节点,大部分属性和方法都是对元素进行操作。

2. Element 对象:表示文档中的元素,可包含为元素节点、文本节点以及注释节点。

3. Attr 属性对象:表示一个Element节点的属性。可获取、添加、修改指定的属性。

4. Event 对象:表示事件发生时的状态,比如事件在其中发生的元素、键盘按键的状态、鼠标的位置、鼠标按钮的状态等等。

 

1. Document 对象

Document 对象是文档树的根节点。

获取一个Document对象通常是通过窗口的document属性。

扩展阅读:https://developer.mozilla.org/en-US/docs/Web/API/document

1.1 静态属性

属性 readonly [] document.all :获取一个包含HTML文档内的所有元素的数组。

属性 readonly [] document.anchors :获取一个包含HTML文档内的所有anchor元素的数组。

属性 readonly body document.body :获取HTML文档内的 body 元素。

属性 string document.charset :设置或获取文档的字符编码。

属性 cookie document.cookie :设置或获取当前HTML文档的cookie。

属性 string document.designMode :设置文档是否可编辑。on:文档可编辑;off(默认):文档不可编辑。

属性 readonly string document.domain :获取当前HTML文档的域名。

属性 readonly [] document.forms :获取一个包含HTML文档内的所有form元素的数组。

属性 readonly []  document.images :获取一个包含HTML文档内的所有image元素的数组。

属性 readonly [] document.links :获取一个包含HTML文档内的所有link元素的数组

属性 readonly string document.referrer :获取载入本文档的来源URL。

属性 string document.title :设置或获取HTML文档的标题。

属性 readonly string document.URL :获取HTML文档的URL。

 

1.2 静态方法

方法 Attribute document.createAttribute(attrName) :创建一个属性对象。eg:document.createAttribute('id'); // 创建一个id属性

方法 HTMLElement document.createElement(elementName) :创建一个元素对象。eg:document.createElement('a'); // 创建一个a元素 

方法 HTMLElement document.createElementNS(namespaceURI,attrName) :创建一个元素对象,并指定命名空间。eg:document.createElementNS("http://www.w3.org/1999/xhtml","a");

方法 EventType document.createEvent(eventType) :创建一个指定的事件类型。

参数:
eventType {EventTyper} :指定事件类型,如MouseEvent。

返回值:
{EventType} 返回所创建的事件类型。

示例:
var mouseEvent =  document.createEvent('MouseEvent'); // 创建一个鼠标事件
方法详解

方法 HTMLElement document.getElementById(elementID) :获取指定ID的第一个元素。

参数:
elementID {string} :元素的ID。

返回值:
{HTMLElment} 获取指定ID的元素对象。若没有找到,获取null;若容器下含有多个相同ID的元素,获取第一个匹配的元素。

示例:
var btn = document.getElementById('btn_submit'); // 获取一个ID为btn_submit的元素
方法详解

方法 HTMLElement[] document.getElementsByClassName(className) :获取一个class属性含有指定值的元素数组 。

注意:若元素class属性包含多个类,指定其中一个,就能获取此元素。

参数:
className {string} :元素class属性包含的字符。

返回值:
{HTMLElement[]} 返回一个元素数组。

示例:
var btnArray=document.getElementsByClassName('btn-hide'); // 获取一个包含class属性包含btn-hide的元素数组
方法详解

方法 HTMLElement[] document.getElementsByName(nameValue) :获取一个name属性为指定值的元素数组。

参数:
nameValue {string} :元素name属性指定的值。

返回值:
{HTMLElement[]} 返回一个元素数组。

示例:
var btnArray=document.getElementsByName('txt'); // 获取一个name属性为txt的元素数组
方法详解

方法 HTMLElement[] document.getElementsByTagName(elementName) :获取一个指定元素名称的元素数组。

参数:
elementName {string} :元素的名称。如:div、a等等。

返回值:
{HTMLElement[]} 返回一个元素数组。

示例:
var linkArray=document.getElementsByTagName('a'); // 获取a元素数组
方法详解

方法 void document.write(string) :向HTML文档写入内容。eg:document.write('

显示div控件
');

方法 void document.writeln(string) :向HTML文档写入内容,并在结尾换行。

 

2. Element 对象

说明:Element 对象表示文档中的元素,可包含为元素节点、文本节点以及注释节点。

获取方式:可通过document.getElementById(elementID)、document.getElementsByName(className)、document.getElementsByName(nameValue)、document.getElementsByTagName(elementName)等方式来获取指定元素。

扩展阅读:https://developer.mozilla.org/en-US/docs/Web/API/Attr

2.1 实例属性

属性 readonly NamedNodeMap attributes :只读,获取此元素的所有属性集合对象。

属性 readonly HTMLElement[] children :获取此元素下子元素的数组。

属性 readonly string[] classList  :只读,获取一个包含该元素class的数组。eg:

你可能感兴趣的:(HTML DOM 对象)