vue中实现禁止浏览器滚动方法

2024年03月26日 前端 JavaScript JS vue 懒猪 共享博客


大家好,本次在开发项目中,点击按钮,弹出一个自定义的弹出窗口和遮罩层,因为页面的超出一屏,有滚动条,但是想让弹出窗时候,禁止浏览器滚动,那么就简单写一个方法给大家。


首先,我们打开我们的txt文本,开始敲代码吧!

嗯... 算了,不装逼了,还是打开代码编辑器吧!


思路是这样的,当弹窗弹出时候,让body overflow: hidden; 超出隐藏,当取消弹窗时候,再让 overflow: visible; 恢复默认值即可。


在vue项目中,src文件中,自行新建js文件 tp-scroll.js,将下放代码放入

export default {
  // 允许页面滚动
  AddScroll () {
    document.body.style.overflow = "visible";
  },
  // 禁止页面滚动
  RemoveScroll () {
    document.body.style.overflow = "hidden";
  }
}



然后,可以在main.js中全局引入,也可以哪个组件用,哪个组件引用,如下

在组件js中引入 import TpScroll from '@/assets/resource/tp-scroll.js'

然后使用

清除禁止滚动,恢复默认

TpScroll.AddScroll();

禁止滚动

TpScroll.RemoveScroll();


例如,我们在弹窗弹出时候,执行禁止滚动,关闭弹窗时候,执行恢复默认即可。

本文链接:http://so.lmcjl.com/news/420/

展开阅读全文
相关内容