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 相关文章推荐
如何判断图片地址是否失效
Feb 02 Javascript
将json对象转换为字符串的方法
Feb 20 Javascript
Jquery的基本对象转换和文档加载用法实例
Feb 25 Javascript
jQuery获取标签文本内容和html内容的方法
Mar 27 Javascript
JavaScript运动减速效果实例分析
Aug 04 Javascript
Vue.js中的图片引用路径的方式
Jul 28 Javascript
理解javascript async的用法
Aug 22 Javascript
详解Angular Forms中自定义ngModel绑定值的方式
Dec 10 Javascript
微信网页登录逻辑与实现方法
Apr 29 Javascript
Vue实现商品飞入购物车效果(电商项目)
Nov 26 Javascript
vue element-ui实现动态面包屑导航
Dec 23 Javascript
只有 20 行的 JavaScript 模板引擎实例详解
May 11 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实现时间轴函数代码
2011/10/08 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
2015/01/29 PHP
JavaScript下通过的XMLHttpRequest发送请求的代码
2011/06/28 Javascript
jquery中文乱码的多种解决方法
2013/06/21 Javascript
原生js实现淘宝首页点击按钮缓慢回到顶部效果
2014/04/06 Javascript
node.js中的querystring.unescape方法使用说明
2014/12/10 Javascript
jQuery实现带滚动线条导航效果的方法
2015/01/30 Javascript
javascript仿京东导航左侧分类导航下拉菜单效果
2020/11/25 Javascript
JS中innerHTML和pasteHTML的区别实例分析
2016/06/22 Javascript
JS中LocalStorage与SessionStorage五种循序渐进的使用方法
2017/07/12 Javascript
微信小程序中上传图片并进行压缩的实现代码
2018/08/28 Javascript
JavaScript中Array方法你该知道的正确打开方法
2018/09/11 Javascript
ES6 系列之 Generator 的自动执行的方法示例
2018/10/19 Javascript
微信小程序地图(map)组件点击(tap)获取经纬度的方法
2019/01/10 Javascript
详解vue中router-link标签所必备了解的属性
2019/04/15 Javascript
[12:51]71泪洒现场!是DOTA2让经典重现
2014/03/24 DOTA
[01:23]2019完美世界全国高校联赛(春季赛)合肥全国总决赛
2019/06/10 DOTA
python从入门到精通(DAY 2)
2015/12/20 Python
Windows下搭建python开发环境详细步骤
2020/07/20 Python
Python模块的加载讲解
2019/01/15 Python
Python语法分析之字符串格式化
2019/06/13 Python
python实现机器人卡牌
2019/10/06 Python
Python configparser模块配置文件过程解析
2020/03/03 Python
Python如何把Spark数据写入ElasticSearch
2020/04/18 Python
如何让PyQt5中QWebEngineView与JavaScript交互
2020/10/21 Python
html5中localStorage本地存储的简单使用
2017/06/16 HTML / CSS
全球采购的街头服饰和帽子:Urban Excess
2020/10/28 全球购物
专业实习自我鉴定
2013/10/29 职场文书
岗位竞聘演讲稿
2014/01/10 职场文书
5.1手机促销活动
2014/01/17 职场文书
公务员政审单位鉴定材料
2014/05/16 职场文书
体育运动会广播稿
2014/10/05 职场文书
2014年军人思想汇报范文
2014/10/12 职场文书
老公保证书
2015/01/17 职场文书
全国助残日活动总结
2015/05/11 职场文书
MySql数据库 查询时间序列间隔
2022/05/11 MySQL