document.compatMode浅谈动态绑定api

 

document.compatMode返回的值

 

 

  • BackCompat-----------------------Quirks Mode
  • CSS1Compat----------------------Standards Mode (标准兼容模式)

在不声明Doctype的情况下,IE默认是Quirks Mode


1. 当document.compatMode 为BackCompat时,浏览器视觉区域的宽度document.body.clientWidth
2. 当document.compatMode 为Standards Mode时,浏览器视觉区域的宽度document.documentElement.clientWidth

/*
获取页面视觉区域的宽度
思路需要判断当前的document.compatMode
*/
getViewWidth: function(){
         var doc = document,
               client = doc.compatMode == 'BackCompat' ? doc.body : doc.documentElement;
        return client.clientWidth;
}
 

/*
获取页面视觉区域的高度
思路和上面一致
*/
getViewHeight = function(){
     var doc = document,
           client = doc.compatMode == 'BackCompat' ? doc.body : doc.documentElement;
     return client.clientHeight;
}
 
/*
仿照使用$.each----动态绑定 节约复用
*/
$.each(['Width','Height'],function(i,v){
      jQuery.fn['getView'+v] = function(){
                  var doc = document,
                        client = doc.compatMode == 'BackCompat' ? doc.body :                               doc.documentElement;
                  var type = 'client'+v;
                  return client[type];
      }
});
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值