vue进入页面时不在顶部以及检测滚动返回顶部按钮如何解决
本篇内容主要讲解"vue进入页面时不在顶部以及检测滚动返回顶部按钮如何解决",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"vue进入页面时不在顶部以及检测滚动返回顶部按钮如何解决"吧!
1.监测浏览器滚动条滚动事件及滚动距离
dmounted() { window.addEventListener("scroll", this.gundong); }, destroyed() { window.removeEventListener("scroll", this.gundong); }, methods: { gundong() { var dis = document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop; if(dis > 120){ this.flag = true }else{ this.flag = false } },
一般给window绑定监测事件就能获得window.pageYOffset滚动距离。
2.有些时候给body设置了{width:100%,height:100%},
之后就需要将事件绑定在document.body
,才能获得document.body.scrollTop
滚动距离。
2.1PC端IE/edge有滚动事件但通过document.body.scrollTop
获取不到数值。
2.2移动端火狐浏览器这样设置没问题也能获取document.body.scrollTop,百度浏览器和华为手机自带的浏览器获取不到。以下有解决方法
vue进入页面时不在顶部
可以在main.js中写入以下
router.afterEach((to, from) => { window.scrollTo(0,0);});
或者用vue-router中的,需要浏览器支持history.pushState
scrollBehavior (to, from, savedPosition) { if (savedPosition) { return savedPosition } else { return { x: 0, y: 0 } }}
如果因为需要设置了body{width:100%,height:100%}
以上就不适用了
我是将vue最外层的#app-container也设置了{width:100%;height:100%}
,如果需要隐藏滚动条这时的样式,其他浏览器隐藏样式
html,body,#app-container{ width: 100%; height: 100%; overflow: scroll;}html::-webkit-scrollbar, body::-webkit-scrollbar,#app-container::-webkit-scrollbar{width:0px;height:0px;}
此时可以在#app-contianer上绑定滚动事件并检测滚动距离
scrollEvent(e) { var dis = e.srcElement.scrollTop; console.log(dis) if (dis > 150) { this.flag = true; } else { this.flag = false; } }返回顶部按钮
backTop() { this.$el.scrollTop = 0; }进入页面在顶部
var vm = new Vue({ router, store, render: h => h(App)}).$mount("#app");router.afterEach((to, from) => { vm.$el.scrollTop = 0;});这样在PC端和移动端那几个浏览器都能正常运作。
到此,相信大家对"vue进入页面时不在顶部以及检测滚动返回顶部按钮如何解决"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
顶部 浏览器 浏览 页面 事件 按钮 检测 内容 方法 样式 学习 监测 移动 实用 更深 下有 兴趣 外层 实用性 实际 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 nfs依赖服务器 辽宁数据网络技术服务技术 服务器贴吧 安装过程中提示数据库挂起 网络安全小报文字图片 颁布实施网络安全的主要目的 wcl中国服务器注册 软件开发省钱项目 云服务器管理销售平台 美萍美容管理连接服务器失败 北京运维服务软件开发价钱 山东易速网络技术有限公司张涛 丹阳网络安全公司 杭州泳漫网络技术有限公司 云南省政府与网络安全 软件开发AI算法 北京政府采购软件开发流程 四川师范大学网络技术基础课答案 ug如何改变服务器功能 软件开发项目绩效计提比例 sql数据库中数据导入导出 战雷服务器在哪 手机 软件开发平台 h5 按钮发送数据库 软件开发成本构成 方舟手游开服务器必须要钱吗 泰拉瑞亚永久在线的服务器 软件开发知名培训机构有哪些 辽源网络安全宣传视频 佛山局部点胶软件开发