JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系


Posted in Javascript onNovember 15, 2015

区别:

javascript

JavaScript 是因特网上最流行的浏览器脚本语言。很容易使用!你一定会喜欢它的!

JavaScript 被数百万计的网页用来改进设计、验证表单、检测浏览器、创建cookies,以及更多的应用。

HTML DOM

HTML DOM 是 W3C 标准(是 HTML 文档对象模型的英文缩写,Document Object Model for HTML)。

HTML DOM 定义了用于 HTML 的一系列标准的对象,以及访问和处理 HTML 文档的标准方法。

通过 DOM,可以访问所有的 HTML 元素,连同它们所包含的文本和属性。可以对其中的内容进行修改和删除,同时也可以创建新的元素。

HTML DOM 独立于平台和编程语言。它可被任何编程语言诸如 Java、JavaScript 和 VBScript 使用。

联系:

通过 JavaScript,您可以重构整个 HTML 文档。您可以添加、移除、改变或重排页面上的项目。

要改变页面的某个东西,JavaScript 就需要获得对 HTML 文档中所有元素进行访问的入口。这个入口,连同对 HTML 元素进行添加、移动、改变或移除的方法和属性,都是通过文档对象模型来获得的(DOM)。
Javascript主要是利用HTML DOM去获得、改变、创建HTML元素,从而达到美化页面、操作页面元素的目标。因此,在Javascript中最常见的就是各种各样的HTML DOM元素以及它们各自的属性。除了这些DOM元素外,Javascript有自己的对象,例如数组。

简单说,可以认为Javascript主要是操纵HTML DOM。两者是不一样的。
Javascript是语言,DOM是可以在各种语言中(不仅js,php也有的)动态修改文档的模型。

下面单独拉出JavaScript与DOM的关系给大家详解

JavaScript与浏览器的工作

1.浏览器获取并加载你的页面,从上至下解析它的内容。

 遇到JavaScript时,浏览器会解析代码,检查它的正确性,然后执行代码。

 浏览器还会建立一个HTML页面的内部模型(DOM)。

2.JavaScript继续执行,使用DOM检查页面、完成修改、从页面接受事件,或者要求浏览器从Web服务器获取其它数据。

JavaScript如何与页面交互?

JavaScript是代码,HTML是标记,完全不同的东西

怎么让它们交互呢?

答案是使用文档对象模型(Docunment Object Model,简称DOM)。

DOM的妙处在于:它能够在所有浏览器上提供一种一致的方式,通过代码访问HTML的结构和内容。

1、在浏览器加载一个页面时,浏览器会解析HTML,并创建文档的一个内部模型,其中包含HTML标记的所有元素。

2、JavaScript可以与DOM交互(JavaScript使用DOM创建或删除元素等等)

document是一个反映HTML的对象,通过调用document的方法改变DOM的状态,也就是改变HTML页面

3、JavaScript修改了DOM时,浏览器会随着动态更新页面。

自制DOM

材料:格式正确的HTML5页面,WEB浏览器

做法:

 1、在最上面创建一个document节点

 2、取HTML页面的最顶层元素,在这里就是<HTML>元素,把它作为document的子节点加到DOM中

 3、对于当前元素中嵌套的每一个元素,将该元素作为当前元素的子节点增加到DOM

 4、对于刚增加的元素,执行第三步,重复工作,直到处理完所有元素

HTML页面如下  

<!DOCTYPE html>
 <html lang="helloworld">
 <head>
 <title>DOM</title>
 <meta cherset="utf-">
 <script src="dom.js" ></script>
 </head>
 <body>
 <h>My Dom</h>
 <div id="entry">
  <h>hello</h>
  <p>
  Today, I am making a dom!!!
  </p>
 </div>
 </body>
 </html>

得到的DOM如下图

JavaScript和HTML DOM的区别与联系及Javascript和DOM的关系

Javascript 相关文章推荐
Javascript将string类型转换int类型
Dec 09 Javascript
JS获取网页图片name属性的方法
Apr 01 Javascript
浅谈Node.js中的定时器
Jun 18 Javascript
Web安全测试之XSS实例讲解
Aug 15 Javascript
利用JavaScript在网页实现八数码启发式A*算法动画效果
Apr 16 Javascript
Vue路由跳转问题记录详解
Jun 15 Javascript
使用Bootrap和Vue实现仿百度搜索功能
Oct 26 Javascript
VUE+Element UI实现简单的表格行内编辑效果的示例的代码
Oct 31 Javascript
浅谈layui使用模板引擎动态渲染元素要注意的问题
Sep 14 Javascript
react-native聊天室|RN版聊天App仿微信实例|RN仿微信界面
Nov 12 Javascript
JavaScript中的this妙用实例分析
May 09 Javascript
jquery实现图片放大镜效果
Dec 23 jQuery
WEB前端开发都应知道的jquery小技巧及jquery三个简写
Nov 15 #Javascript
JS使用eval解析JSON的注意事项分析
Nov 14 #Javascript
js读取并解析JSON类型数据的方法
Nov 14 #Javascript
基于JS实现PHP的sprintf函数实例
Nov 14 #Javascript
javascript动态生成树形菜单的方法
Nov 14 #Javascript
node.js回调函数之阻塞调用与非阻塞调用
Nov 13 #Javascript
JavaScript在网页中画圆的函数arc使用方法
Nov 13 #Javascript
You might like
PHP mkdir()定义和用法
2009/01/14 PHP
php实现扫描二维码根据浏览器类型访问不同下载地址
2014/10/15 PHP
PHP实现获取域名的方法小结
2014/11/05 PHP
Symfony数据校验方法实例分析
2015/01/26 PHP
CodeIgniter中使用Smarty3基本配置
2015/06/29 PHP
PHP进程通信基础之信号
2017/02/19 PHP
Yii框架常见缓存应用实例小结
2019/09/09 PHP
JavaScript-世界上误解最深的语言分析
2007/08/12 Javascript
网站页面自动跳转实现方法PHP、JSP(上)
2010/08/01 Javascript
JS两种定义方式的区别、内部原理
2013/11/21 Javascript
22点关于jquery性能优化的建议
2014/05/28 Javascript
一段非常简单的js判断浏览器的内核
2014/08/17 Javascript
非jQuery实现照片散落桌子上,单击放大的LightBox效果
2014/11/28 Javascript
基于jquery fly插件实现加入购物车抛物线动画效果
2016/04/05 Javascript
原生js实现addClass,removeClass,hasClass方法
2016/04/27 Javascript
jquery的父、子、兄弟节点查找,节点的子节点循环方法
2016/12/07 Javascript
Node.js复制文件的方法示例
2016/12/29 Javascript
Vue项目中引入外部文件的方法(css、js、less)
2017/07/24 Javascript
JavaScript面向对象程序设计创建对象的方法分析
2018/08/13 Javascript
JSON生成Form表单的方法示例
2018/11/21 Javascript
Angular.JS读取数据库数据调用完整实例
2019/07/02 Javascript
微信小程序全局变量GLOBALDATA的定义和调用过程解析
2019/09/23 Javascript
谈谈JavaScript中的垃圾回收机制
2020/09/17 Javascript
Python聚类算法之基本K均值实例详解
2015/11/20 Python
python关于矩阵重复赋值覆盖问题的解决方法
2019/07/19 Python
深入浅出CSS3 background-clip,background-origin和border-image教程
2011/01/27 HTML / CSS
HTML5中的autofocus(自动聚焦)属性介绍
2014/04/23 HTML / CSS
Foot Locker加拿大官网:美国知名运动产品零售商
2019/07/21 全球购物
最新计算机专业自荐信
2013/10/16 职场文书
大学军训感想
2014/02/12 职场文书
《称象》教学反思
2014/04/25 职场文书
我的中国梦演讲稿初中篇
2014/08/19 职场文书
关于工作经历的证明书
2014/10/11 职场文书
中学生自我评价2015
2015/03/03 职场文书
CSS3鼠标悬浮过渡缩放效果
2021/04/17 HTML / CSS
深入详解JS函数的柯里化
2021/06/09 Javascript