本节书摘来自异步社区《html5+css3网页设计入门必读》一书中的第2章,第2.9节,作者: 【英】jeremy keith , 【美】dan cederholm 更多章节内容可以访问云栖社区“异步社区”公众号查看。
如果想要获取关于css的文档,需要查阅css 规范。如果寻找的是有关标记的文档,需要查阅html规范。但是,哪里可以查阅javascript api的文档,例如document.write、innerhtml和window.hitory?javascript规范所涉及的全部是编程语言,因此无法获得任何与浏览器api有关的内容。
到现在为止,浏览器一直独立创建和执行javascript api并相互借鉴。html5对这些api的记录是一劳永逸的,因为这可以确保较好的兼容性。
在标记规范中包含javascript规范听起来可能有些奇怪,但要记住,html5是由web apps 1.0发展而来的。javascript是制作web应用过程中不可缺少的一部分。
html5规范中的所有章节都致力于创建web应用的新api,其中包含一个undo-manager——它使得浏览器能够跟踪文档变更。该规范中有一节介绍了如何使用缓存清单来创建离线web应用。另外,该规范对拖放功能也进行了详细描述。
与往常一样,如果存在已有的实现,那么规范将在其基础上建立,而非将一切推倒重来。微软的ie浏览器在很多年前就已经包含了拖放api,这也是html5拖放的基础。遗憾的是,微软的api是有问题的。如果以前的基础并不适用,那么重新开始也不见得是坏主意。
html5中的api十分强大。它们完全超出了我的能力范畴,所以我将这些内容留给更优秀的开发人员来编写。这些api值得用一本单独的书来介绍。