DOM是现在按W3C标准的浏览器均实现的标准。HTML、CSS、DOM共同在结构、表现、交互上共同支撑起一个页面。当然,必须以用户为中心、平稳退化、逐渐增强。DOM的操作是通过JS来实现的。JS最初在NN2中使用,在1997年以JS1.0为基础提交给ECMA,1998年提交到ISO/IEC。CSS1出现于1996年,规范有68页;1998年有了CSS2,规范有480页,实际并无CSS3的定义,通常指CSS level3规范以及新的第一版的某些模板规范,如同HTML5一样随着技术的迅速发展以后再划分代次并不合适。DOM1级产生于1998年。JS的迅速发展与2005年兴起的AJAX关系很大,又得益于google的v8引擎,使得js在服务器端的node.js迅速发展。

DOM是一种与平台、语言无关的API,是在该领域的约定就如同化学界的符号一样;可以通过一种编程语言对另一种标记语言的文档进行修改、删除、查询等操作。在1998年产生DOM1级前,就有实验性的DOM。IE4 NN4的DHTML概念很好,但是实现起来差异很大,简直是灾难。浏览器大战微软在其操作系统中捆绑IE而战胜NN。实际上NN的接班人是公益性质的firefox。2003年的safari以及chrome广泛使用的android的webkit引擎,firefox的Gecko引擎、Opera(原先是Prosto、后来是webkit)使得微软专有的Trident专有引擎向规范靠齐有了效果。IE9之后微软在这方面做得不错。

在操作DOM时,注意应当解析完了之后去用JS改变、查询;否则,这是一个不完整的DOM或许完不成应有的功能。window.onload = function () {do something;};

DOM缘起的更多相关文章

  1. 关于DOM的操作以及性能优化问题-重绘重排

     写在前面: 大家都知道DOM的操作很昂贵. 然后贵在什么地方呢? 一.访问DOM元素 二.修改DOM引起的重绘重排 一.访问DOM 像书上的比喻:把DOM和JavaScript(这里指ECMScri ...

  2. 读书笔记:JavaScript DOM 编程艺术(第二版)

    读完还是能学到很多的基础知识,这里记录下,方便回顾与及时查阅. 内容也有自己的一些补充. JavaScript DOM 编程艺术(第二版) 1.JavaScript简史 JavaScript由Nets ...

  3. 页面嵌入dom与被嵌入iframe的攻防

    1.情景一:自己的页面被引入(嵌入)至别人的页面iframe中 if(window.self != window.top){ //url是自己页面的url window.top.location.hr ...

  4. 通俗易懂的来讲讲DOM

    DOM是所有前端开发每天打交道的东西,但是随着jQuery等库的出现,大大简化了DOM操作,导致大家慢慢的“遗忘”了它的本来面貌.不过,要想深入学习前端知识,对DOM的了解是不可或缺的,所以本文力图系 ...

  5. HTML DOM 介绍

    本篇主要介绍DOM内容.DOM 节点.节点属性以及获取HTML元素的方法. 目录 1. 介绍 DOM:介绍DOM,以及对DOM分类和功能的说明. 2. DOM 节点:介绍DOM节点分类和节点层次. 3 ...

  6. HTML DOM 对象

    本篇主要介绍HTML DOM 对象:Document.Element.Attr.Event等4个对象. 目录 1. Document 对象:表示文档树的根节点,大部分属性和方法都是对元素进行操作. 2 ...

  7. 重撸js_2_基础dom操作

    1.node 方法 返回 含义 nodeName String 获取节点名称 nodeType Number 获取节点类型 nodeValue String 节点的值(注意:文本也是节点) 2.inn ...

  8. 虚拟dom与diff算法 分析

    好文集合: 深入浅出React(四):虚拟DOM Diff算法解析 全面理解虚拟DOM,实现虚拟DOM

  9. 窥探Vue.js 2.0 - Virtual DOM到底是个什么鬼?

    引言 你可能听说在Vue.js 2.0已经发布,并且在其中新添加如了一些新功能.其中一个功能就是"Virtual DOM". Virtual DOM是什么 在之前,React和Em ...

随机推荐

  1. hdu 4496 D-City(并查集)

    Problem Description Luxer is a really bad guy. He destroys everything he met. One day Luxer went to ...

  2. hdu 2660 Accepted Necklace(dfs)

    Problem Description I have N precious stones, and plan to use K of them to make a necklace for my mo ...

  3. Hibernate征途(一)之初识

    相见恨晚 很久以前,大概从开始接触数据库开始,就闪过这样一个想法,怎么看怎么觉得数据库表和vb的类模块很像,不是么?除了vb类模块还有函数外:越往下学觉得二者越像,尤其在三层时学到实体类的概念,我去, ...

  4. 根据Model有值的自动生成添加的Sql语句

    static string Table_Name = ""; /// <summary> /// model实体中的字段名相对数据库表添加的字段 /// 如: /// ...

  5. xml、txt、config的一些基本用法

    先来测试一下xml的读取好了创建了一个student.xml的文件 <?xml version="1.0" encoding="UTF-8"?> & ...

  6. 实力为王 八年DBA经验谈

    首先说说我的经历吧,工作8年,一直是搞运维这一块.做数据库的工作大概6年多,ORACLE DBA大概做了有4年多,目前只能说是比入门级稍高点的水平.我是最近为了换个更好的工作才在今年通过的OCP 11 ...

  7. 蜗牛爱课- iOS中plist的创建,数据写入与读取

    iOS中plist的创建,数据写入与读取功能创建一个test.plist文件-(void)triggerStorage{    NSArray *paths=NSSearchPathForDirect ...

  8. 10个简单步骤,完全理解SQL

    此文章为转载 1. SQL 是一种声明式语言 首先要把这个概念记在脑中:“声明”. SQL 语言是为计算机声明了一个你想从原始数据中获得什么样的结果的一个范例,而不是告诉计算机如何能够得到结果.这是不 ...

  9. HDU 1021 - Fibonacci Again

    找规律,分析让 F[N] 每一项对 3 取余的余数: 1,2,0, 2,2,1,0, 1,1,2,0, 2,2,1,0, 1,1,2,0, 2,2,1,0 ......... 显然循环了 #inclu ...

  10. .Net之垃圾回收算法

    垃圾回收器检测托管堆中是否有应用程序不在使用的任何对象,如果一次垃圾回收之后,堆栈没有可用的内存,new操作符将会抛出OutOfMemoryException(内存溢出). 每一个应用程序都包含一组根 ...