目录
7 页面被卷去的上侧距离 window.pageYOffset
8 页面被卷去的左侧距离 window.pageXOffset
scroll与滚动条相关,主要有下面几个属性

与其他大小属性的区别如下

scrollWidth返回的数值中包含padding,但不包含border与margin。scrollWidth返回的结果没有单位

![]()
scrollHeight返回的数值中包含padding,但不包含border与margin。scrollHeight返回的结果没有单位

![]()

盒子中的内容超出了盒子本身尺寸的时候,scroll是按照内容走的,client不管内容只按照盒子原来的尺寸走

宽度如果超出和高度一样
下面图的红色框子是div盒子的可视区域

把滚动条搞出来后,搞一个按钮进行监测

没滚动的时候是0



我们将div中的内容设置为不换行,然后搞个按钮监测



打开之后的侧边栏是这样的

当滚到一定程度后会增加一个会顶部

代码是这样的
- html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <meta http-equiv="X-UA-Compatible" content="IE=edge">
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
- <title>Documenttitle>
- <style>
- body {
- height:3000px;
- background-color: rgb(232,226,224);
- }
-
- .alongside {
- position: fixed;
- top: 50%;
- right:0px;
- transform: translate(0,-50%);
- width:80px;
- background-color: white;
- border-radius: 20px 0px 0px 20px;
- }
-
- div {
- height:60px;
- display:flex;
- flex-direction: column;
- align-items: center;
- font-size: 12px;
- padding:5px;
- }
-
- .return_top {
- display:none;
- }
-
- style>
- head>
- <body>
- <section class="alongside">
- <div>
- <img src="images/官方客服.png" alt="">
- <span>官方客服span>
- div>
- <div>
- <img src="images/反馈.png" alt="">
- <span>反馈span>
- div>
- <div>
- <img src="images/举报.png" alt="">
- <span>举报span>
- div>
- <div class="return_top">
- <img src="images/回顶部.png" alt="">
- <span>回顶部span>
- div>
- section>
- body>
- <script>
- activate = document.querySelector('.activate')
- return_top = document.querySelector('.return_top')
-
- document.body.onscroll = function() {
- console.log(document.documentElement.scrollTop)
- if (document.documentElement.scrollTop > 500) {
- return_top.style.display = 'flex';
- }
- else {
- return_top.style.display = 'none';
- }
- }
- script>
- html>
打开后是这样的

滚动到一定的位置回出现回顶部

再滚到上面,回顶部消失

上面代码中使用了 document.documentElement,scrollTop 来获取页面滚动的上侧距离,除此之外还有另外两种方式

DTD是我们html最开始的这句话
![]()
可以搞一个照顾兼容性的函数,不过我觉得基本不会用到




