• js获取屏幕尺寸代码全集与常用代码段


    最近一段时间在做有关通过js来获取屏幕尺寸从来来控制一样效果或者样式的项目,于是,我也花了点时间好好的整理了一份关于js获取屏幕尺寸代码的文档出来,供大家参考,也许有些地方写的有问题,还望大家多多指出错误,以便文档写的更完整,更准确。

    var bodyWidth = document.body.clientWidth ; //网页可见区域宽
    var bodyHeight =document.body.clientHeight ; //网页可见区域高
    var bodyWidthWithBorder =document.body.offsetWidth;//网页可见区域宽(包括边线的宽)
    var bodyHeightWithBorder=document.body.offsetHeight ; //网页可见区域高(包括边线的宽)
    var bodyWidthWithScroll =document.body.scrollWidth ; //网页正文全文宽
    var bodyHeightWithScroll=document.body.scrollHeight ; //网页正文全文高
    var bodyTopHeight =document.body.scrollTop ; //网页被卷去的上边距
    var bodyLeftWidth =document.body.scrollLeft ; //网页被卷去的左边距
    var windowTopHeight =window.screenTop ; //网页正文部分上边距
    var windowLeftWidth =window.screenLeft ; //网页正文部分左边距
    var screenHeight =window.screen.height ; //屏幕分辨率的高
    var screenWidth =window.screen.width ; //屏幕分辨率的宽
    var screenAvailHeight =window.screen.availHeight ; //屏幕可用工作区高度
    var screenAvailWidth =window.screen.availWidth ; //屏幕可用工作区宽度

    HTML精确定位:scrollLeft,scrollWidth , clientWidth , offsetWidth
    scrollHeight:获取对象的滚动高度。
    scrollLeft:设置或获取位于对象左边界和窗口中目前可见内容的最左端之间的距离
    scrollTop:设置或获取位于对象最顶端和窗口中可见内容的最顶端之间的距离
    scrollWidth:获取对象的滚动宽度
    offsetHeight:获取对象相对于版面或由父坐标 offsetParent 属性指定的父坐标的高度
    offsetLeft:获取对象相对于版面或由 offsetParent 属性指定的父坐标的计算左侧位置
    offsetTop:获取对象相对于版面或由 offsetTop 属性指定的父坐标的计算顶端位置
    event.clientX:相对文档的水平座标
    event.clientY:相对文档的垂直座标
    event.offsetX:相对容器的水平坐标
    event.offsetY:相对容器的垂直坐标
    document.documentElement.scrollTop:垂直方向滚动的值
    event.clientX+document.documentElement.scrollTop:相对文档的水平座标+垂直方向滚动的量

    IE,FireFox 差异如下:
    IE6.0、FF1.06+:
    clientWidth = width + padding
    clientHeight = height + padding
    offsetWidth = width + padding + border
    offsetHeight = height + padding + border
    IE5.0/5.5:
    clientWidth = width - border
    clientHeight = height - border
    offsetWidth = width
    offsetHeight = height

    IE与FF下共同支持与不支持的属性研究,以及取值的差异:


    一、以下是IE新开页面屏幕计算默认值(每台电脑显示器分辨率不同):
    FF与IE都支持(计算有差异)网页可见区域宽【document.body.clientWidth】:1239
    FF与IE都支持(计算有差异)网页可见区域高【document.body.clientHeight】:0
    FF与IE都支持(计算有差异)网页可见区域宽【document.body.offsetWidth】:1239
    FF与IE都支持(计算有差异)网页可见区域高【document.body.offsetHeight】:0
    FF与IE都支持(计算有差异)网页正文全文宽【document.body.scrollWidth】:1239
    FF与IE都支持(计算有差异)网页正文全文高【document.body.scrollHeight】:0
    FF与IE都支持(计算相同)网页被卷去的高【document.body.scrollTop】:0
    FF与IE都支持(计算相同)网页被卷去的宽【document.body.scrollLeft】:0
    只支持IE:网页正文部分上【window.screenTop】:144
    只支持IE:网页正文部分左【window.screenLeft】:0
    FF与IE都支持(计算相同):屏幕分辨率的高【window.screen.height】:1024
    FF与IE都支持(计算相同):屏幕分辨率的宽【window.screen.width】:1280
    FF与IE都支持(计算相同):屏幕可用工作区高度【window.screen.availHeight】:990
    FF与IE都支持(计算相同):屏幕可用工作区宽度【window.screen.availWidth】:1280
    FF与IE都支持(计算有差异):窗体左【document.body.offsetLeft】与右【document.body.offsetTop】:10和15
    FF与IE都支持(计算有差异):窗体高【document.body.offsetWidth】与宽【document.body.offsetHeight】:1239和0
    垂直方向滚动的值【document.documentElement.scrollTop】:0
    只支持FF浏览器整个宽高,不包括工具条【windows.innerHeight】:undefined
    FF与IE都支持(计算有差异)网页内容可视区域的高度【document.documentElement.clientHeight】:820
    FF与IE都支持(计算相同):获取位于对象最顶端和窗口中可见内容的最顶端之间的距离【document.documentElement.scrollTop】:0

    二、以下是FF新开页面屏幕计算默认值:
    FF与IE都支持(计算有差异)网页可见区域宽【document.body.clientWidth】:1264
    FF与IE都支持(计算有差异)网页可见区域高【document.body.clientHeight】:0
    FF与IE都支持(计算有差异)网页可见区域宽【document.body.offsetWidth】:1264
    FF与IE都支持(计算有差异)网页可见区域高【document.body.offsetHeight】:0
    FF与IE都支持(计算有差异)网页正文全文宽【document.body.scrollWidth】:1264
    FF与IE都支持(计算有差异)网页正文全文高【document.body.scrollHeight】:0
    FF与IE都支持(计算相同)网页被卷去的高【document.body.scrollTop】:0
    FF与IE都支持(计算相同)网页被卷去的宽【document.body.scrollLeft】:0
    只支持IE:网页正文部分上【window.screenTop】:undefined
    只支持IE:网页正文部分左【window.screenLeft】:undefined
    FF与IE都支持(计算相同):屏幕分辨率的高【window.screen.height】:1024
    FF与IE都支持(计算相同):屏幕分辨率的宽【window.screen.width】:1280
    FF与IE都支持(计算相同):屏幕可用工作区高度【window.screen.availHeight】:990
    FF与IE都支持(计算相同):屏幕可用工作区宽度【window.screen.availWidth】:1280
    FF与IE都支持(计算有差异):窗体左【document.body.offsetLeft】与右【document.body.offsetTop】:0和0
    FF与IE都支持(计算有差异):窗体高【document.body.offsetWidth】与宽【document.body.offsetHeight】:1264和0
    垂直方向滚动的值【document.documentElement.scrollTop】:0
    只支持FF浏览器整个宽高,不包括工具条【windows.innerHeight】:829
    FF与IE都支持(计算有差异)网页内容可视区域的高度【document.documentElement.clientHeight】:858
    FF与IE都支持(计算相同):获取位于对象最顶端和窗口中可见内容的最顶端之间的距离【document.documentElement.scrollTop】:0

    以上数据表明:在FF与IE下,在计算屏幕宽度时,FF比IE多 25个像素.

    取滚动条最大值:

    var maxScrollLeft = element.scrollWidth - element.clientWidth;

    http://stackoverflow.com/questions/5138373/how-do-i-get-the-max-value-of-scrollleft

     
  • 相关阅读:
    Cookies 和 Session的区别
    List接口、Set接口和Map接口
    Java NIO:IO与NIO的区别
    NIO与传统IO的区别
    Java中堆内存和栈内存详解
    Java序列化与反序列化
    maven搭建
    深入研究java.lang.ThreadLocal类
    SQL 优化经验总结34条
    数据库事务的四大特性以及事务的隔离级别
  • 原文地址:https://www.cnblogs.com/yyman001/p/js.html
Copyright © 2020-2023  润新知