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 相关文章推荐
JS取文本框中最小值的简单实例
Nov 29 Javascript
JS执行删除前的判断代码
Feb 18 Javascript
生成二维码方法汇总
Dec 26 Javascript
jQuery中:radio选择器用法实例
Jan 03 Javascript
深入浅出分析javaScript中this用法
May 09 Javascript
jQuery选择器及jquery案例详解(必看)
May 20 Javascript
Javascript 6里的4个新语法
Aug 25 Javascript
jquery+css实现简单的图片轮播效果
Aug 07 jQuery
ReactJs实现树形结构的数据显示的组件的示例
Aug 18 Javascript
详解Angularjs 自定义指令中的数据绑定
Jul 19 Javascript
微信小程序实现的自定义分享功能示例
Feb 12 Javascript
javascript实现页面的实时时钟显示示例
Aug 06 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
用PHP4访问Oracle815
2006/10/09 PHP
php列出一个目录下的所有文件的代码
2012/10/09 PHP
一个php短网址的生成代码(仿微博短网址)
2014/05/07 PHP
腾讯CMEM的PHP扩展编译安装方法
2015/09/25 PHP
javascript 可以拖动的DIV(二)
2009/06/26 Javascript
jQuery中的bind绑定事件与文本框改变事件的临时解决方法
2010/08/13 Javascript
为Extjs加加速(javascript加速)
2010/08/19 Javascript
javascript动态添加样式(行内式/嵌入式/外链式等规则)
2013/06/24 Javascript
js截取字符串的两种方法及区别详解
2013/11/05 Javascript
JQuery伸缩导航练习示例
2013/11/13 Javascript
用JS在浏览器中创建下载文件
2014/03/05 Javascript
JavaScript中的alert()函数使用技巧详解
2014/12/29 Javascript
jQuery经过一段时间自动隐藏指定元素的方法
2015/03/17 Javascript
js实现图片淡入淡出切换简易效果
2016/08/22 Javascript
js 判断附件后缀的简单实现方法
2016/10/11 Javascript
canvas实现钟表效果
2017/02/13 Javascript
微信小程序 引入es6 promise
2017/04/12 Javascript
AngularJS获取json数据的方法详解
2017/05/27 Javascript
深究AngularJS如何获取input的焦点(自定义指令)
2017/06/12 Javascript
基于 Immutable.js 实现撤销重做功能的实例代码
2018/03/01 Javascript
使用JSON格式提交数据到服务端的实例代码
2018/04/01 Javascript
解决Js先触发失去焦点事件再执行点击事件的问题
2018/08/30 Javascript
详解angularjs4部署文件过大解决过程
2018/12/05 Javascript
JavaScript实现随机点名小程序
2020/10/29 Javascript
Python爬虫 批量爬取下载抖音视频代码实例
2019/08/16 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
2020/03/19 Python
python导入库的具体方法
2020/06/18 Python
python等待10秒执行下一命令的方法
2020/07/19 Python
几个解决兼容IE6\7\8不支持html5标签的几个方法
2013/01/07 HTML / CSS
泰国综合购物网站:Lazada泰国
2018/04/09 全球购物
Haglöfs瑞典官方网站:haglofs火柴棍,欧洲顶级户外品牌
2018/10/18 全球购物
爱尔兰橄榄球店:Irish Rugby Store
2019/12/05 全球购物
Tessabit日本:集世界奢侈品和设计师品牌的意大利精品买手店
2020/01/07 全球购物
大学军训通讯稿
2014/01/13 职场文书
OpenCV-Python实现人脸美白算法的实例
2021/06/11 Python
Go调用Rust方法及外部函数接口前置
2022/06/14 Golang