取得窗口大小 兼容所有浏览器的js代码

  取得窗口大小的代码:

  

复制代码 代码如下:

  var pageWidth = window.innerWidth,

  var pageHeight = window.innerHeight;

  if(typeof pageWidth != "number"){

  if(document.compatMode == "number"){

  pageWidth = document.documentElement.clientWidth;

  pageHeight = document.documentElement.clientHeight;

  }else{

  pageWidth = document.body.clientWidth;

  pageHeight = document.body.clientHeight;

  }

  }

  我们首先把window.innerWidth和window.innerHeight的值分别付给了pageWidth和pageHeight。然后检查pageWidth中保存的是不是一个数值;如果不是,则通过document.compatMode来确定页面是否处于标准模式。如果是,则分别使用document.documentElement.clientWidth和document.documentElement.clientHeight的值。否则,就使用document.body.clientWidth和document.body.clientHeight的值。

  取得窗口位置的代码:

  

复制代码 代码如下:

  var leftPos = (typeof window.screenLeft == "number") ? window.screenLeft : window.screenX;

  var topPos = (typeof window.screenTop == "number") ? window.screenTop : window.screenY;

 

  这两个例子目的是取得窗口左边和上边的位置,首先运用二元操作符判断screenLeft属性和screenTops属性是否存在,如果存在(在IE、Safari、Opera和Chrome中),则取这两个属性的值。如果不存在(在Firefox中),则取screenX和screenY的值。