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 相关文章推荐
HTML TO JavaScript 转换
Jun 26 Javascript
Z-Blog中用到的js代码
Mar 15 Javascript
让textarea控件的滚动条怎是位与最下方
Apr 20 Javascript
jQuery封装的屏幕居中提示信息代码
Jun 08 Javascript
Bootstrap栅格系统的使用和理解2
Dec 14 Javascript
canvas仿iwatch时钟效果
Mar 06 Javascript
详解angular中的作用域及继承
May 31 Javascript
javascript帧动画(实例讲解)
Sep 02 Javascript
不到200行 JavaScript 代码实现富文本编辑器的方法
Jan 03 Javascript
Node.js安装详细步骤教程(Windows版)详解
Sep 01 Javascript
Javascript实现秒表计时游戏
May 27 Javascript
vue 弹出遮罩层样式实例
Jul 22 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.ini不生效问题解决方法(上传大于8M的文件)
2013/06/14 PHP
ThinkPHP框架实现的邮箱激活功能示例
2018/06/15 PHP
使用laravel根据用户类型来显示或隐藏字段
2019/10/17 PHP
Web版彷 Visual Studio 2003 颜色选择器
2007/01/09 Javascript
jQuery toggle()设置CSS样式
2009/11/05 Javascript
原生javascript实现图片轮播效果代码
2010/09/03 Javascript
javascript实现类似超链接的效果
2014/12/26 Javascript
javascript操作符"!~"详解
2015/02/10 Javascript
JS实现仿Windows7风格的网页右键菜单效果代码
2015/09/11 Javascript
AngularJS中实现显示或隐藏动画效果的方式总结
2015/12/31 Javascript
jQuery动态修改字体大小的方法【测试可用】
2016/09/09 Javascript
jQuery实现的两种简单弹窗效果示例
2018/04/18 jQuery
使用angular-cli webpack创建多个包的方法
2018/10/16 Javascript
纯javascript实现选择框的全选与反选功能
2019/04/08 Javascript
9种方法优化jQuery代码详解
2020/02/04 jQuery
Element的el-tree控件后台数据结构的生成以及方法的抽取
2020/03/05 Javascript
[02:44]2014DOTA2 国际邀请赛中国区预选赛 大神红毯秀
2014/05/25 DOTA
[58:00]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第二场 2月7日
2021/03/11 DOTA
python实现红包裂变算法
2016/02/16 Python
python中列表和元组的区别
2017/12/18 Python
pycharm使用matplotlib.pyplot不显示图形的解决方法
2018/10/28 Python
Python如何在循环内使用list.remove()
2020/06/01 Python
Pygame框架实现飞机大战
2020/08/07 Python
Speedo美国:澳大利亚顶尖泳衣制造商
2016/08/03 全球购物
特罗佩亚包官方网站:Tropea
2017/01/03 全球购物
哈利波特商店:Harry Potter Shop
2018/11/30 全球购物
企业环保标语
2014/06/10 职场文书
大学生工作自荐书
2014/06/16 职场文书
球队口号
2014/06/18 职场文书
关于读书的演讲稿500字
2014/08/27 职场文书
公司领导班子四风对照检查材料
2014/09/27 职场文书
劳动仲裁调解书
2015/05/20 职场文书
事业单位工作人员2015年度思想工作总结
2015/10/15 职场文书
大学班长竞选稿
2015/11/20 职场文书
军训心得体会范文(2016最新篇)
2016/01/11 职场文书
python热力图实现的完整实例
2022/06/25 Python