一、获取浏览器窗口的尺寸
innerwidth//获取宽度<br>
innerheight//获取高度<br>
可视区域,包含滚动条 mac不包含滚动条<br>
二、scroll窗口的滚动事件
一般写一个匿名函数
window.onscroll=function(){console.log('滚动}<br>
//表示当前窗口滚动的时候,会执行此函数<br>
//浏览器滚动事件,当页面发生变化是触发,不论是上下还是水平方向的滚动<br>
scroll系列可以动态的获取元素的大小,滚动距离
语法:元素.scrolltop<br>
返回值:返回元素被卷上去上侧的距离,返回值不带单位。<br>可读写的属性:写入的时候可以使页面瞬间滚动到指定位置<br>
2.1自定义滚动函数
scrolltop()<br>函数只能设置滚动到指定地点,滚动时间是固定的,如果滚动的距离比较大,则滚动的比较快,弱项匀速滚动,需要自定义函数<br>
2.2卷曲的宽度``
卷去的宽度和高度:当页面比窗口高或者宽时,会有一部分内容随页面滚动而隐藏,上面隐藏的高度称为卷去的高度,左侧隐藏的宽度称之为卷去的宽度
``
页面必须有DOCTYPE标签
docunent。documentElement。scrollLeft<br>作用:返回页面被卷上去的头部距离。<br>
2.3 卷去的高度
1. 页面必须要有DOCTYPE标签
document.documentElement.scrollTop
//使用时必须要有DOCTYPE,如果没有获得滚动高度一直是0。
作用:
返回页面被卷进去的高度。
2. 页面必须没有DOCTYPE标签
document.body.scrollTop
//使用时必须没有DOCTYPE,如果有,获得滚动高度一直是0。
作用:
返回页面被卷进去的高度。
2.4 兼容写法
- 使用短路来处理兼容性问题,前提条件是不能报错。
var scrLeft = document.documentElement.scrollLeft || document.body.scrollLeft;
var scrTop = document.documentElement.scrollTop || document.body.scrollTop;
2.5 新增的,ie9以上版本才支持
window.pageYOffset 垂直方向
window.pageXOffset 水平方向
三、滚动到指定位置
####3.1 scrollTo()
格式:
scrollTo(横坐标,纵坐标)
- 不要单位
- 两个参数必须写全
3.2 scrollTo(对象)
scrollTo({
top: 纵坐标,
left: 横坐标,
behavior: "smooth"
//用来决定定位的方式是瞬间定位还是平滑定位。
// 瞬间定位:instant
//平滑定位: smooth
})
\