当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。
HTML DOM 定义了用于 HTML 的一系列标准的对象,以及访问和处理 HTML 文档的标准方法。通过 DOM,你可以访问所有的 HTML 元素,连同它们所包含的文本和属性。
HTML DOM 独立于平台和编程语言。它可被任何编程语言诸如 Java、JavaScript 和 VBScript 使用。
HTML DOM 模型被构造为对象的树:

通过可编程的对象模型,JavaScript 获得了足够的能力来创建动态的 HTML。
通常,通过 JavaScript可以操作 HTML 元素。
为了做到这件事情,必须首先找到该元素。有五种方法来做这件
本例选取 id="intro" 元素:

如果找到该元素,则该方法将以对象(在 x 中)的形式返回该元素。
如果未找到该元素,则 x 将包含 null。
本例选取 name="btn1" 的button元素:
![]()
本例查找 id="main" 的元素,然后查找 id="main" 元素中的所有 元素:

本例通过 getElementsByClassName 函数来查找 class="intro" 的元素:

![]()
通过五种不同的方式获取到了HTML元素,我们现在可以通过 JavaScript设置 HTML 元素的内容。
JavaScript 能够创建动态的 HTML 内容:
今天的日期是:
Thu Feb 25 2016 19:25:10 GMT+0800
在 JavaScript 中,document.write() 可用于直接向 HTML 输出流写内容。

注意:绝对不要在文档加载完成之后使用 document.write()。这会覆盖该文档。
修改 HTML 内容是使用innerHTML方法和innerText方法。
innerHTML方法:
如需改变 HTML 元素的内容,请使用这个语法:

实例讲解:
上面的 HTML 文档含有 id="header" 的 元素
我们使用 HTML DOM 来获得 id="header" 的元素
JavaScript 更改此元素的内容 (innerHTML)
innerText方法:
如需改变 HTML 元素的内容,请使用这个语法:

区别:
innerHtml 可以修改元素的内容,如果在修改的内容里面放html标签的话,innerHtml可以解析html标签。
innerText 可以修改元素的内容,如果在修改的内容里面放html标签的话,innerText不会解析html标签而是纯文本输出。


HTML DOM 允许 JavaScript 改变 HTML 元素的样式。
如需改变 HTML 元素的样式,请使用这个语法:


创建新的 HTML 元素
在文档对象模型 (DOM) 中,每个节点都是一个对象。DOM 节点有三个重要的属性,分别
如需向 HTML DOM 添加新元素,您必须首先创建该元素(元素节点),然后向一个已存在的元素追加该元素。


以下代码将已有的元素删除:


1、文档对象模型(Document Object Model,DOM)是表示和操作HTML和XML文档内容的基础 API
2、当网页被加载时,浏览器会根据DOM模型,将结构化文档(比如HTML和XML)解析成一系列的节点,再由这些节点组成一个树状结构(DOM Tree)。
3、Document和Element是两个重要的DOM类
4、能利用BOM做什么!
BOM提供了一些访问窗口对象的一些方法,我们可以用它来移动窗口位置,改变窗口大小,打开新窗口和关闭窗口,弹出对话框,进行导航以及获取客户的一些信息如:浏览器品牌版本,屏幕分辨率。但 BOM最强大的功能是它提供了一个访问HTML页面的一入口--document对象,以使得我们可以通过这个入口来使用DOM的强大功能!!!
BOM提供了一组对象,用来完成对浏览器的操作。
BOM提供的对象:
window对象是浏览器窗口对文档提供的一个现实的容器,代表打开的浏览器窗口,是每一个加载文档的父对象
window的属性和方法调用方法:window.属性,window.方法 也可以直接调用省略 window.
Window对象的方法:





Navigator 对象的方法和属性
Navigator 对象包含有关浏览器的信息。
-
- <div id="example">div>
-
- <script>
-
- txt = "
浏览器代号: "
+ navigator.appCodeName + ""; -
- txt+= "
浏览器名称: "
+ navigator.appName + ""; -
- txt+= "
浏览器版本: "
+ navigator.appVersion + ""; -
- txt+= "
启用Cookies: "
+ navigator.cookieEnabled + ""; -
- txt+= "
硬件平台: "
+ navigator.platform + "" -
- txt+= "
用户代理: "
+ navigator.userAgent + ""; -
- txt+= "
用户代理语言: "
+ navigator.systemLanguage + ""; -
- document.getElementById("example").innerHTML=txt;
-
- script>
-
Location 对象的方法和属性
Location 对象包含有关当前 URL 的信息。
Location 对象是 window 对象的一部分,可通过 window.Location 属性对其进行访问。
History对象的方法和属性
History 对象包含用户(在浏览器窗口中)访问过的 URL。
History 对象是 window 对象的一部分,可通过 window.history 属性对其进行访问。
Screen对象的属性