window.innerHeight  表示浏览器可见或可用高度

window.pageXOffset 和 window.pageYOffset 属性返回文档在窗口左上角水平和垂直方向滚动的像素。

pageXOffset 和 pageYOffset 属性相等于 scrollX 和 scrollY 属性。

// 所有浏览器,除了 IE9 及更早版本

水平滚动: " + window.pageXOffset ;

垂直滚动: " + window.pageYOffset;

// IE9 及更早版本

"水平滚动: " + document.documentElement.scrollLeft ;

垂直滚动: " + document.documentElement.scrollTop;

scrollHeight和scrollTop属性只有DOM元素才有,window/document没有

element.getBoundingClientRect();返回一组用于描述边框的只读属性——left、top、right和bottom,单位为像素,如下图

当计算边界矩形时,会考虑视口区域(或其他可滚动元素)内的滚动操作,也就是说,当滚动位置发生了改变,top和left属性值就会随之立即发生变化(因此,它们的值是相对于视口的,而不是绝对的)。如果你需要获得相对于整个网页左上角定位的属性值,那么只要给top、left属性值加上当前的滚动位置(通过window.scrollX和window.scrollY),这样就可以获取与当前的滚动位置无关的值。

为了跨浏览器兼容,请使用 window.pageXOffset 和 window.pageYOffset 代替 window.scrollX 和 window.scrollY。

附:

dom 从可视窗口消失计算

dom.getBoundingClientRect().top - window.document.body.clientTop < 0 则从上方消失

dom.getBoundingClientRect().top - window.document.body.clientTop > window.innerHeight  则从下方完全消失

如果要计算刚开始消失,还需要dom的高度 如下:

dom.getBoundingClientRect().top - window.document.body.clientTop > window.innerHeight - dom.height

绝对定位某个dom位置

left = dom.getBoundingClientRect().left + window.pageXOffset - window.document.body.clientLeft

top = dom.getBoundingClientRect().top + window.pageYOffset - window.document.body.clientTop

javascript scrollbar滚动条相关属性相关推荐

  1. android 滚动条 相关属性

    属性名称 描述 android:background 设置背景色/背景图片.可以通过以下两种方法设置背景为透明:"@android:color/transparent"和" ...

  2. Javascript - 实现Javascript控制ScrollBar(滚动条) - 学习/实践

    1.应用场景 主要用于控制srollbar的位置, 实现界面定位效果. 2.学习/操作 在Javascript中有三种方法能够控制滚动条的位置. 方法一:用scroll函数实现 scroll(x,y) ...

  3. JavaScript 中BOM及window的相关属性及方法

    概述:BOM (全称bowser object model) 浏览器对象模型,他是用于操作浏览器相关的内容.BOM是一个缺乏规范的东西,为了保证他的规范性产生了一系列的共用对象来解决这个问题.沿用至今 ...

  4. jQuery插件:Tiny Scrollbar滚动条插件(滚动条美化、默认滚动条)

    Tiny Scrollbar是基于jQuery的滚动条插件, 风格简洁, 可自定义样式, 体积较小. 插件特点: 支持iPhone, iPad, Android 新版1.8,可以在移动设备上滚动内容 ...

  5. CSS3的字体和文本相关属性

    CSS3其中一个重要变化就是增加了服务器字体功能,这样避免了我们浏览页面时因为字体缺失导致网页效果变差的问题.通过CSS3的服务器字体功能,可以控制浏览器使用服务器包含的字体,这样可以保证即使我们的电 ...

  6. 6、尺寸和定位的相关属性

    一.CSS3新增的与尺寸相关的属性 新增了box-sizing和resize两个与尺寸相关的属性. 1.box-sizing用于设置盒模型组成模式:content-box border-box 值co ...

  7. CSS 动画相关属性动态实例大全(82种),2023年祝福第二弹(送你一只守护兔)(下),守护兔源代码免费下载

    2023年春节祝福第二弹--送你一只守护兔(下) CSS 动画相关属性动态实例大全(82种).守护兔源代码免费下载 本文目录: 五.CSS3 动画相关属性实例大全 (1).CSS3的动画基本属性 (2 ...

  8. CSS样式字体与文本相关属性

    CSS样式字体与文本相关属性 字体相关属性 基本属性 添加阴影 添加多阴影 微调字体大小 颜色表示 文本相关属性 文本基本属性 文本自动换行 长单词和URL地址换行 CSS3新增服务器字体 字体相关属 ...

  9. 非常全的javascript控制MediaPlayer的属性集合

    播放: MediaPlayer.Play() 暂停: MediaPlayer.Pause() 定位: MediaPlayer.SetCurrentEntry(lWhichEntry) MediaPla ...

最新文章

  1. JS 基础事件的用法
  2. php中如何让这段东西不显示出来,数据显示处理,该怎么处理
  3. 数据存储介质销毁:护航数据安全的最后一公里
  4. 使用nltk.pos出现IndexError: string index out of range
  5. 解决解决鼠标右键被锁定
  6. pos共识机制_OK区块链60讲 | 第17集:什么是PoS共识机制
  7. 【计算机组成原理】微处理器、微型计算机、微型计算机系统
  8. BPSK调制解调matlab仿真
  9. 【软件分析/静态程序分析学习笔记】1.静态程序分析(Static Program Analysis)介绍
  10. c语言将阿拉伯数字变为大写,使用C#实现阿拉伯数字到大写中文的转换
  11. 海风教育荣获“中国(行业)典范品牌”
  12. 多媒体开发之rtmp---rtmp client 端的实现
  13. Excel数据计数(count)
  14. 微信公众号开发模式开启总结
  15. 微信小程序 评论功能实现
  16. 学计算机的人c语言修仙评价,评《C语言修仙》 非渊静者 评《C语言修仙》 时间:2019-05-04 11:55:19...
  17. 面试了几十家软件测试公司全是这个“套路”
  18. ServiceComb 课程
  19. error: src refspec dev does not match any.
  20. DNS 学习笔记之三- 详解DNS的资源记录

热门文章

  1. JAVAer要了解的掌故
  2. 项目感受|总结|献给怀揣着梦想来到兄弟连学习的兄弟姐妹们
  3. 2022研究生学术与职业素养讲座(MOOC)期末答案
  4. IOST节点搭建【私链】
  5. 移动BI快速入门培训-人人都可以成为数据分析师
  6. 静态工具类使用单例对象线程安全问题注意1
  7. Mac与Linux的文件系统,Apple为iOS和macOS提供全新文件系统APFS
  8. 深度学习基础概念-Batch、Iteration、Epoch理解
  9. 原神倾听木簧笛的八音曲寻找缺失的石头怎么做
  10. 企业信息安全不能大意,不提早防范容易中招——推荐导入ISO27001系列标准