JavaScript和DOM有什么区别? DOM与Firefox有关吗? DOM只是HTML元素的源顺序吗?
答案 0 :(得分:23)
DOM代表Document Object Model,您可以从名称中猜出,它以独立于平台/浏览器的方式表示HTML / XML文档的结构。 DOM还提供了一个API来操作DOM,其功能包括getElementsByTagName
和createElement
。
JavaScript是Web浏览器可以执行的编程语言。 JavaScript可以使用DOM scripting与DOM进行交互。
编辑以在评论中回答您的问题:例如,浏览器会下载HTML以及任何引用的JS和CSS(以及图像,Flash等)。浏览器从HTML构造DOM并使用CSS中指定的规则呈现它。 JS可以在页面加载时,当用户执行某些操作时,或者在发生任何其他event时操纵DOM。当DOM更改时,浏览器会更新显示的内容。
答案 1 :(得分:9)
正如其他人所说,DOM( D ocument O bject M odel)本质上是用于操作HTML的API(或XML)文档 - 通常使用JavaScript,因为这是我们在浏览器中使用的语言,但并非总是如此,因为有类似DOM的API用于在服务器端以其他语言操作这些文档或桌面,例如:http://java.sun.com/j2se/1.4.2/docs/api/org/w3c/dom/package-summary.html。
JavaScript只是一种编程语言。它恰好是大多数(如果不是全部)Web浏览器的事实标准脚本语言,因此在实践中,大多数情况下,当您编写DOM操作脚本以在客户端运行时,您正在使用它DOM和JavaScript同时使用。
然而,它不一定是那样的。有人可以编写一个Web浏览器(或Web浏览器的插件),让程序员用Python,Ruby,C,Scheme等编写他们的DOM操作脚本(事实上,JavaScript开始在Netscape生活)作为一种计划)。
此外,还有完全在Web浏览器之外运行的JavaScript解释器(甚至编译器)。事实上,如果你想了解核心JavaScript语言是什么,你可以尝试使用Mozilla的Rhino进行一些脚本编写:http://www.mozilla.org/rhino/。没有默认的DOM,没有窗口对象,默认情况下没有与浏览器相关联(尽管您可以导入一些Java DOM包)。
我还建议您阅读MDC(http://developer.mozilla.org/en/Core_JavaScript_1.5_Guide)上的旧JavaScript 1.5规范以及DOM上的一些材料(http://developer.mozilla.org/en/DOM)。
答案 2 :(得分:2)
简单地说,JavaScript允许您操纵控制客户端脚本的DOM AKA Document对象模型。
答案 3 :(得分:2)
文档对象模型(DOM)是一个 HTML和XML文档的API。它 提供结构表示 的文件,使您能够 修改其内容和视觉效果 介绍。基本上,它连接起来 网页到脚本或编程 语言
虽然JavaScript是允许您操作DOM对象的编程语言
希望清除它