document.compatMode介绍


Posted in Javascript onMay 21, 2009

今天在ext中看到 document.compatMode的使用,感觉这个对于我们开发兼容性的web页面还是很有帮助,我们都知道,IE对盒模型的渲染在 Standards Mode和Quirks Mode是有很大差别的,在Standards Mode下对于盒模型的解释和其他的标准浏览器是一样,但在Quirks Mode模式下则有很大差别,而在不声明Doctype的情况下,IE默认又是Quirks Mode。所以为兼容性考虑,我们可能需要获取当前的文档渲染方式。
document.compatMode正好派上用场,它有两种可能的返回值:BackCompat和CSS1Compat,对其解释如下:
BackCompat Standards-compliant mode is not switched on. (Quirks Mode)
CSS1Compat Standards-compliant mode is switched on. (Standards Mode)
在实际的项目中,我们还需要在获取浏览是否IE,这样就可以得到IE的渲染模式了。在Ext中的代码:isBorderBox=isIE&&!isStrict。
当文档有了标准声明时, document.compatMode 的值就等于 "CSS1compat", 因此, 我们可以根据 document.compatMode 的值来判断文档是否加了标准声明
var height = document.compatMode=="CSS1Compat" ? document.documentElement.clientHeight : document.body.clientHeight;

Javascript 相关文章推荐
Add Formatted Data to a Spreadsheet
Jun 12 Javascript
jquery 模式对话框终极版实现代码
Sep 28 Javascript
Jquery之Ajax运用 学习运用篇
Sep 26 Javascript
如何使用Javascript获取距今n天前的日期
Jul 08 Javascript
js获取腾讯视频ID的方法
Oct 03 Javascript
微信小程序实现的涂鸦功能示例【附源码下载】
Jan 12 Javascript
监听element-ui table滚动事件的方法
Mar 26 Javascript
node省市区三级数据性能测评实例分析
Nov 06 Javascript
使用PreloadJS加载图片资源的基础方法详解
Feb 03 Javascript
微信小程序动态评分展示/五角星展示/半颗星展示/自定义长度展示功能的实现
Jul 22 Javascript
JS实现页面鼠标点击出现图片特效
Aug 19 Javascript
vue element-ui中table合计指定列求和实例
Nov 02 Javascript
各种常用浏览器getBoundingClientRect的解析
May 21 #Javascript
简单的js分页脚本
May 21 #Javascript
input+select(multiple) 实现下拉框输入值
May 21 #Javascript
一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子
May 21 #Javascript
Javascript 兼容firefox的一些问题
May 21 #Javascript
鼠标经过的文本框textbox变色
May 21 #Javascript
jQuery 性能优化指南(3)
May 21 #Javascript
You might like
JavaScript XML操作 封装类
2009/07/01 Javascript
jQuery1.6 类型判断实现代码
2011/09/01 Javascript
让低版本浏览器支持input的placeholder属性(js方法)
2013/04/03 Javascript
JS中Date日期函数中的参数使用介绍
2014/01/02 Javascript
JavaScript常用小技巧小结
2014/12/29 Javascript
详解JavaScript中的事件流和事件处理程序
2016/05/20 Javascript
详细谈谈AngularJS的子级作用域问题
2016/09/05 Javascript
js手机号4位显示空格,银行卡每4位显示空格效果
2017/03/23 Javascript
Puppeteer 爬取动态生成的网页实战
2018/11/14 Javascript
在Webpack中用url-loader处理图片和字体的问题
2020/04/28 Javascript
VUE 单页面使用 echart 窗口变化时的用法
2020/07/30 Javascript
详解Howler.js Web音频播放终极解决方案
2020/08/23 Javascript
jQuery实现二级导航菜单的示例
2020/09/30 jQuery
一分钟学会JavaScript中的try-catch
2020/12/14 Javascript
[01:28:31]《加油DOTA》真人秀 第五期
2014/09/01 DOTA
python实现数据预处理之填充缺失值的示例
2017/12/22 Python
python的常用模块之collections模块详解
2018/12/06 Python
PyCharm在新窗口打开项目的方法
2019/01/17 Python
python实现计数排序与桶排序实例代码
2019/03/28 Python
python多线程实现TCP服务端
2019/09/03 Python
Python list与NumPy array 区分详解
2019/11/06 Python
TensorFlow中如何确定张量的形状实例
2020/06/23 Python
Python logging日志模块 配置文件方式
2020/07/12 Python
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
Otticanet澳大利亚:最顶尖的世界名牌眼镜, 能得到打折季的价格
2018/08/23 全球购物
车间调度岗位职责
2013/11/30 职场文书
爱之链教学反思
2014/04/30 职场文书
设计专业毕业生求职信
2014/06/25 职场文书
校园运动会广播稿
2014/10/06 职场文书
2015年办公室工作总结范文
2015/03/31 职场文书
单独二胎证明
2015/06/24 职场文书
高中化学教学反思
2016/02/22 职场文书
演讲稿之感恩老师(三篇范文)
2019/09/06 职场文书
python flask框架快速入门
2021/05/14 Python
Winsows11性能如何? win11性能测评多核竟比Win10差了10%
2021/11/21 数码科技
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js