vue滾動

一、監聽滾動事件ide

利用VUE寫一個在控制檯打印當前的scrollTop,this

首先,在mounted鉤子中給window添加一個滾動滾動監聽事件,事件

mounted () {
window.addEventListener('scroll', this.handleScroll)
},
而後在方法中,添加這個handleScroll方法rem

handleScroll () {
var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
console.log(scrollTop)
},
二、監聽元素到頂部的距離  並判斷滾動的距離若是大於了元素到頂部的距離時,設置searchBar爲true,不然就是falseit

handleScroll () {
let scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop
let offsetTop = document.querySelector('#searchBar').offsetTop
scrollTop > offsetTop ? this.searchBarFixed = true : this.searchBarFixed = false
},
注意,若是離開該頁面須要移除這個監聽的事件,否則會報錯。console

destroyed () {
window.removeEventListener('scroll', this.handleScroll)
},鉤子

相關文章
相關標籤/搜索