vue中監聽頁面滾動位置
- 問題描述
- 實現代碼
- 1. 獲取頁面被卷起的高度
- 2. 監聽滾動事件
問題描述
頁面滾動到指定位置時,展示側邊欄導航。
實現代碼
1. 獲取頁面被卷起的高度
使用 e.target.scrollTop
可以獲取到頁面向上滾動了多少像素,代碼如下:
showSideNav(e) {if (!!e.target.scrollTop && e.target.scrollTop > 700) {this.isSideNavShow = true;} else {this.isSideNavShow = false;}
},
2. 監聽滾動事件
在生命周期監聽和移除滾動事件,代碼如下:
mounted() {window.addEventListener('scroll', this.showSideNav, true);
},
beforeDestroy() {window.removeEventListener('scroll', this.showSideNav, true);
},