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 相关文章推荐
jQuery 使用手册(一)
Sep 23 Javascript
js原生appendChild的bug解决心得分享
Jul 01 Javascript
单击复制文字兼容各浏览器的完美解决方案
Jul 04 Javascript
javascript笛卡尔积算法实现方法
Apr 08 Javascript
js实现漂浮回顶部按钮实例
May 06 Javascript
jquery实现的3D旋转木马特效代码分享
Aug 25 Javascript
javascript创建含数字字母的随机字符串方法总结
Aug 01 Javascript
AngularJS实现星星等级评分功能
Sep 24 Javascript
使用 bootstrap modal遇到的问题小结
Nov 09 Javascript
详解webpack中的hash、chunkhash、contenthash区别
Jan 05 Javascript
小程序按钮避免多次调用接口和点击方案实现(不用showLoading)
Apr 15 Javascript
JavaScript事件委托实现原理及优点进行
Aug 29 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
php删除左端与右端空格的方法
2014/11/29 PHP
php有道翻译api调用方法实例
2014/12/22 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
javascript 自动转到命名锚记
2009/01/10 Javascript
javascript 鼠标拖动图标技术
2010/02/07 Javascript
JQuery下的Live方法和$.browser方法使用代码
2010/06/02 Javascript
javascript权威指南 学习笔记之null和undefined
2011/09/25 Javascript
12款经典的白富美型—jquery图片轮播插件—前端开发必备
2013/01/08 Javascript
jQuery将所有被选中的checkbox某个属性值连接成字符串的方法
2015/01/24 Javascript
c#程序员对TypeScript的认识过程
2015/06/19 Javascript
浅谈Javascript数组的使用
2015/07/29 Javascript
原生js实现图片层叠轮播切换效果
2016/02/02 Javascript
Bootstrap CSS组件之按钮组(btn-group)
2016/12/17 Javascript
angularJS模态框$modal实例代码
2017/05/27 Javascript
深入探究AngularJs之$scope对象(作用域)
2017/07/20 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
webpack+vue+express(hot)热启动调试简单配置方法
2018/09/19 Javascript
python 3.5下xadmin的使用及修复源码bug
2017/05/10 Python
Python面向对象class类属性及子类用法分析
2018/02/02 Python
Python3导入CSV文件的实例(跟Python2有些许的不同)
2018/06/22 Python
使用Python计算玩彩票赢钱概率
2019/06/26 Python
Python importlib动态导入模块实现代码
2020/04/16 Python
python数据抓取3种方法总结
2021/02/07 Python
劳力士官方珠宝商:J.R. Dunn Jewelers
2018/09/29 全球购物
校园餐饮创业计划书
2014/01/10 职场文书
生物学学生自我评价
2014/01/17 职场文书
工艺工程师岗位职责
2014/03/04 职场文书
会计的岗位职责
2014/03/15 职场文书
公司任命书范本
2014/06/04 职场文书
学校爱国卫生月活动总结
2014/06/25 职场文书
慰问信格式
2015/02/14 职场文书
2015年高校辅导员工作总结
2015/04/20 职场文书
反腐倡廉心得体会2016
2016/01/13 职场文书
《平移和旋转》教学反思
2016/02/19 职场文书
浅谈Mysql多表连接查询的执行细节
2021/04/24 MySQL
Python  lambda匿名函数和三元运算符
2022/04/19 Python