JS获取页面窗口实际大小函数

作者:银子 来源:银子的blog 时间:2008-01-28 13:18:00 

Lightbox里面的一个函数,能把页面实际的高宽与浏览器可视面积的高宽保存在一个数组中..非常好用.

什么是Lightbox?下载lightbox源代码? -->Lightbox JS v2.0

function getPageSize(){
   
    var xScroll, yScroll;
   
    if (window.innerHeight && window.scrollMaxY) {   
        xScroll = document.body.scrollWidth;
        yScroll = window.innerHeight + window.scrollMaxY;
    } else if (document.body.scrollHeight > document.body.offsetHeight){ // all but Explorer Mac
        xScroll = document.body.scrollWidth;
        yScroll = document.body.scrollHeight;
    } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari
        xScroll = document.body.offsetWidth;
        yScroll = document.body.offsetHeight;
    }
   
    var windowWidth, windowHeight;
    if (self.innerHeight) {    // all except Explorer
        windowWidth = self.innerWidth;
        windowHeight = self.innerHeight;
    } else if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode
        windowWidth = document.documentElement.clientWidth;
        windowHeight = document.documentElement.clientHeight;
    } else if (document.body) { // other Explorers
        windowWidth = document.body.clientWidth;
        windowHeight = document.body.clientHeight;
    }   
   
    // for small pages with total height less then height of the viewport
    if(yScroll < windowHeight){
        pageHeight = windowHeight;
    } else { 
        pageHeight = yScroll;
    }
 
    // for small pages with total width less then width of the viewport
    if(xScroll < windowWidth){   
        pageWidth = windowWidth;
    } else {
        pageWidth = xScroll;
    }
 
    arrayPageSize = new Array(pageWidth,pageHeight,windowWidth,windowHeight) 
    return arrayPageSize;
}

调用方法:

var getPageSize = getPageSize(); 
alert(getPageSize[0] + getPageSize[1] + getPageSize[2] + getPageSize[3]);

getPageSize[0]保存的是页面宽度,getPageSize[1]保存的是页面高度,getPageSize[2]保存的是窗口宽度,getPageSize[3]保存的是窗口高度。

标签:窗口,页面,宽度,函数,js
0
投稿

猜你喜欢

  • python实现支付宝当面付(扫码支付)功能

    2023-04-01 21:38:45
  • 下载golang.org/x包的操作方法

    2023-07-11 16:54:04
  • Python标准库os常用函数和属性详解

    2022-05-17 21:40:03
  • JavaScript字符串对象substr方法入门实例(用于截取字符串)

    2024-06-05 09:53:44
  • 学习JSON.stringify的9大特性和转换规则

    2024-04-23 09:29:12
  • pytorch模型存储的2种实现方法

    2023-10-06 11:37:24
  • 教你如何使用Python实现二叉树结构及三种遍历

    2021-04-30 14:08:00
  • python自动zip压缩目录的方法

    2021-01-15 12:39:41
  • Python之Scrapy爬虫框架安装及使用详解

    2022-10-02 18:28:20
  • python中json格式数据输出的简单实现方法

    2021-03-04 22:19:19
  • Python reques接口测试框架实现代码

    2023-10-07 12:47:08
  • Mysql中的NULL和Empty String

    2024-01-24 02:27:27
  • 主页移动背景代码

    2009-11-16 17:54:00
  • sql server 2008 忘记sa密码的解决方法

    2024-01-26 22:48:16
  • Python+Pygame实战之英文版猜字游戏的实现

    2021-01-18 01:40:32
  • 利用ASP发送和接收XML数据的处理方法

    2009-02-02 08:57:00
  • Python判断两个list是否是父子集关系的实例

    2021-08-17 07:16:18
  • Python安装依赖(包)模块方法详解

    2023-11-02 15:38:01
  • 详解Python如何实现Excel数据读取和写入

    2023-10-29 06:46:35
  • 如何在CocosCreator中使用JSZip压缩

    2024-04-22 22:16:54
  • asp之家 网络编程 m.aspxhome.com