博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js 获取窗口、屏幕、页面元素宽高+位置(兼容ie)
阅读量:6972 次
发布时间:2019-06-27

本文共 2309 字,大约阅读时间需要 7 分钟。

js 获取各种宽高+位置

-- 先上总结,再细细道来

总结
  • 获取屏幕宽高

    window.screen.width / window.screen.height //总区域      window.screen.availWidth / window.screen.availHeight//可用区域      //有些手机存在底部任务栏,一般直接用第一个就ok
  • 获取浏览器宽高

    width = window.outerWidth      height = window.outerHeight
  • 获取浏览器位置

    left = window.screenX || window.screenLeft      top = window.screenY || window.screenTop
  • 获取页面宽高

    (方法1)      width = window.innerWidth              || document.documentElement.clientWidth              || document.body.clientWidth      height = window.innerHeight               || document.documentElement.clientHeight               || document.body.clientHeight      (方法2)      function getPageSize(){         var page = document.documentElement                   ?document.documentElement                   :document.body,             gcr = page.getbBoundingClientRect()         return {            width:Math.abs(gcr.right-gcr.left)            height:Math.abs(gcr.bottom-gcr.top)         }      }      (移动端,一般用inner就ok了)      width = window.innerWidth      height =  window.innerHeight
  • 获取element宽高

    1、内部宽高client(padding+content,不包滚动条和border)          width = elment.clientWidth          height = elment.clientHeight      2、整体宽高offset(padding+content+border+滚动条)          width = elment.offsetWidth          height = elment.offsetHeight      3、含被overflow隐藏的内部宽高scroll(无滚动条时同1、client)          width = elment.scrollWidth          height = elment.scrollHeight      4、内容宽高getBoundingClientRect(只包含content)          size = element.getBoundingClientRect().width / height          ie8-不支持width / height可运用right-left/bottom-top解决
  • 获取element位置

    offsetParent:设有position值为absolute或relative的最近的上级元素      1、相对父元素(offsetParent)左上角定位          left = element.offsetLeft          top =  element.offsetTop      2、相对视口左上角定位           position=element.getBoundingClientRect().left/right/top/bottom          //在ie下调试时,加上onscroll动态监听scrollTop数据才会正常刷新
  • 获取滚动条位置

    1、获取element对象滚动条位置         scrollTop = element.scrollTop      2、获取window滚动条位置兼容性方法         scrollTop = window.scrollY                       || window.pageYOffset                       || (document.documentElement.scrollTop===0                          ?document.body.scrollTop                          :document.documentElement.scrollTop                          );             //在ie下调试时,加上onscroll动态监听scrollTop数据才会正常刷新

转载地址:http://zyosl.baihongyu.com/

你可能感兴趣的文章
【转】产品描述英文专用术语
查看>>
Nginx 502 bad gateway问题的解决方法
查看>>
11. Container With Most Water - Medium
查看>>
基于MFC简单图片裁剪工具
查看>>
IEnumerable对象的Distinct方法重写
查看>>
斐波那契数列(水题)板子
查看>>
Python多进程
查看>>
UISearchBar的应用
查看>>
解决Android中图片圆角——.9图
查看>>
retain和copy的区别 #import @class 的区别
查看>>
oracle group by 行转列 分析执行计划
查看>>
CSS基础语法
查看>>
使用栈实现队列(1)(Java)
查看>>
N皇后问题
查看>>
安装系统需要设置BIOS
查看>>
WPF 浏览器应用程序(page页面)如何全屏
查看>>
用户角色权限
查看>>
java读取xml(当xml放在包里时)
查看>>
图解Raid5数据存储的原理
查看>>
多线程面试题系列(1):多线程笔试面试题汇总
查看>>