详解使用vue-router进行页面切换时滚动条位置与滚动监听事件
作者:web_captian 时间:2024-05-08 09:34:39
按照正常的产品逻辑,我们在进行页面切换时滚动条应该是在页面顶部的,可是。。。在使用vue-router进行页面切换时,发现滚动条所处的位置被自动记录了下来,且在另一个组件内定义的滚动监听事件仍会运行,着实吃了一大惊。。。
说说我的破解方法:
1、在每个需要用vue-router切换的组件的mounted钩子内将页面的位置自动回滚到页面顶部,解决滚动条位置自动记录问题;
2、在每个组件内定义一条变量scrollWatch默认为true,在绑定滚动监听事件时加个if判断,只有在scrollWatch为true时进行监听函数,然后在组件destroyed的钩子内将变量scrollWatch设为false;这样就解决了滚动监听在别的组件内仍会运行的问题。
<script>
import $ from 'jquery';
export default {
data () {
return {
scrollWatch: true
}
},
mounted() {
$(window).scrollTop(0);
$(window).on('scroll', () => {
if (this.scrollWatch) {
//your code here
}
}
});
},
destroyed () {
this.scrollWatch = false;
}
}
</script>
来源:104.116.116.112.58.47.47.119.119.119.46.99.110.98.108.111.103.115.46.99.111.109.47.119.101.98.45.99.97.112.116.97.105.110.47.112.47.54.52.48.50.54.57.51.46.104.116.109.108.
标签:vue,router
0
投稿
猜你喜欢
网易2016研发工程师编程题 奖学金(python)
2021-11-21 19:37:54
Electron点击穿透不规则窗体的透明区域的实现
2024-04-23 09:32:32
Python中的函数参数(位置参数、默认参数、可变参数)
2021-03-24 21:57:38
一文带你吃透什么是PHP中的序列化
2023-06-12 19:44:20
Cookies 欺骗漏洞的防范方法(vbs+js 实现)
2011-03-09 11:09:00
ASP把长的数字用格式化为货币样式的函数
2009-09-18 14:49:00
如何把数据库的记录输出到表格去?
2009-11-06 13:37:00
两个2008北京奥运会倒计时js代码
2008-06-11 13:26:00
python选择排序算法的实现代码
2021-06-19 07:51:10
go使用makefile脚本编译应用的方法小结
2024-04-25 15:17:57
Go语言中TCP/IP网络编程的深入讲解
2024-01-30 08:05:55
Pytorch GPU显存充足却显示out of memory的解决方式
2022-05-20 18:56:58
Python 6种基本变量操作技巧总结
2023-04-03 21:50:04
使用python-cv2实现视频的分解与合成的示例代码
2021-06-21 11:51:46
PHP预定义变量9大超全局数组用法详解
2023-06-14 10:23:47
python编程之requests在网络请求中添加cookies参数方法详解
2023-07-03 00:48:23
Python 的描述符 descriptor详解
2021-03-04 21:14:17
详解vue中async-await的使用误区
2024-05-09 09:21:06
MYSQL实现添加购物车时防止重复添加示例代码
2024-01-15 01:44:15
Python函数参数和注解的使用
2021-09-23 17:34:50