HTML5 扩展了 HTMLDocument 类型

HTMLDocument 扩展

​ HTML5 扩展了 HTMLDocument 类型,增加了更多功能。与其他 HTML5 定义的 DOM 扩展一样, 这些变化同样基于所有浏览器事实上都已经支持的专有扩展。为此,即使这些扩展的标准化相对较晚, 很多浏览器也早就实现了相应的功能。

readyState 属性

​ readyState 是 IE4 最早添加到 document 对象上的属性,后来其他浏览器也都依葫芦画瓢地支持这个属性。最终,HTML5 将这个属性写进了标准。document.readyState 属性有两个可能的值:

  • loading,表示文档正在加载;
  • complete,表示文档加载完成。

​ 实际开发中,最好是把 document.readState 当成一个指示器,以判断文档是否加载完毕。在这个属性得到广泛支持以前,通常要依赖 onload 事件处理程序设置一个标记,表示文档加载完了。这个属性的基本用法如下:

js 复制代码
if (document.readyState == "complete"){ 
    // 执行操作
} 

compatMode 属性

​ 自从 IE6 提供了以标准或混杂模式渲染页面的能力之后,检测页面渲染模式 成为一个必要的需求。 IE 为 document 添加了 compatMode 属性,这个属性唯一的任务是指示浏览器当前处于什么渲染模式。 如下面的例子所示,标准模式下 document.compatMode 的值是"CSS1Compat",而在混杂模式下, document.compatMode 的值是"BackCompat":

js 复制代码
if (document.compatMode == "CSS1Compat"){ 
    console.log("Standards mode"); // 标准模式
} else {
    console.log("Quirks mode");  // 混杂模式
} 

​ HTML5 最终也把 compatMode 属性的实现标准化了。

head 属性

​ 作为对 document.body(指向文档的元素)的补充,HTML5 增加了 document.head 属性,指向文档的元素。可以像下面这样直接取得元素:

js 复制代码
let head = document.head;
相关推荐
小二·1 小时前
前端笔记:HTML output标签介绍及用法
javascript·笔记·html5
java水泥工19 小时前
基于Echarts+HTML5可视化数据大屏展示-英雄联盟LPL比赛数据可视化
信息可视化·echarts·html5
双普拉斯1 天前
微信小程序通用弹窗组件封装与动画实现
javascript·html5
2501_918126912 天前
用html5写一个宠物小精灵游戏
游戏·html5·宠物
05Nuyoah3 天前
Day 02 HTML的基础
前端·javascript·css·html·firefox·jquery·html5
2501_918126913 天前
用html5写一个王者荣耀英雄技能,出装计算模拟器
html5·个人开发
java水泥工11 天前
基于Echarts+HTML5可视化数据大屏展示-白茶大数据溯源平台V2
大数据·echarts·html5
2501_9181269112 天前
用html5写一个flappybird游戏
css·游戏·html5
DevilSeagull14 天前
JavaScript WebAPI 指南
java·开发语言·javascript·html·ecmascript·html5
全栈技术负责人16 天前
Hybrid应用性能优化实战分享(本文iOS 与 H5为例,安卓同理)
前端·ios·性能优化·html5