关于窗口滚动的距离的问题

落落叶叶无声 2020-04-04 02:24:50

body{
height: 2000px;
}

获取窗口垂直方向滚动的大小的方法是 window.scrollY.
按我的理解,是不是 window.scrollY = body的高度 - body的bottom位置
也就是:window.scrollY = document.body.clientHeight - document.body.getBoundingClientRect().bottom
但是实际不是,window.scrollY总比右边的值多出20左右?这是什么原因呢?
...全文
115 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
落落叶叶无声 2020-04-05
  • 打赏
  • 举报
回复
引用 1 楼 天际的海浪 的回复:
多出的20是body的 marginTop 和 marginBottom。
嗯,是因为多出了marginTop。getBoundingClientRect 不包含外边距,所以应该跟marginBottom无关!
天际的海浪 2020-04-04
  • 打赏
  • 举报
回复
多出的20是body的 marginTop 和 marginBottom。

87,923

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧