vue 遮罩层阻止默认滚动事件操作


Posted in Javascript onJuly 28, 2020

在写移动端页面的时候,弹出遮罩层后,我们仍然可以滚动页面。

vue中提供 @touchmove.prevent 方法可以完美解决这个问题

<div class="dialog" @touchmove.prevent ></div>

如果不是使用Vue的话,可以给body添加overflow:hidden属性解决

补充知识:vue项目中禁止页面滚动 / 滚动事件穿透 (弹出蒙版时,弹出层下面还可以滚动)

vue项目中弹出层时,蒙版下还可以滚动页面。

移动端解决方案

在蒙层所在div上加 @touchmove.prevent

<div class="maskBox" @touchmove.prevent></div>

PC端解决方案

弹层显示时调用 stopMove()停止页面滚动 ,弹层消失时调用 Move()开启页面滚动

//停止页面滚动
 stopMove(){
  let m = function(e){e.preventDefault();};
  document.body.style.overflow='hidden';
  document.addEventListener("touchmove",m,{ passive:false });//禁止页面滑动
 },
 //开启页面滚动
 Move(){
  let m =function(e){e.preventDefault();};
  document.body.style.overflow='';//出现滚动条
  document.removeEventListener("touchmove",m,{ passive:true });
 }

以上这篇vue 遮罩层阻止默认滚动事件操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery插件jbox使用iframe关闭问题
Feb 09 Javascript
jQuery 对象中的类数组操作
Apr 27 Javascript
javascript 全等号运算符使用说明
May 31 Javascript
jQuery 表单验证扩展代码(二)
Oct 20 Javascript
js图片闪动特效可以控制间隔时间如几分钟闪动一下
Aug 12 Javascript
jquery ui bootstrap 实现自定义风格
Nov 14 Javascript
Bootstrap整体框架之CSS12栅格系统
Dec 15 Javascript
利用JavaScript的%做隔行换色的实例
Nov 25 Javascript
webpack4之如何编写loader的方法步骤
Jun 06 Javascript
vue.js中导出Excel表格的案例分析
Jun 11 Javascript
JavaScript展开操作符(Spread operator)详解
Jul 20 Javascript
JavaScript交换变量的常用方法小结【4种方法】
May 07 Javascript
JavaScript实现沿五角星形线摆动的小圆实例详解
Jul 28 #Javascript
处理JavaScript值为undefined的7个小技巧
Jul 28 #Javascript
vue中touch和click共存的解决方式
Jul 28 #Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
Jul 28 #Javascript
JavaScript中window和document用法详解
Jul 28 #Javascript
vue中echarts引入中国地图的案例
Jul 28 #Javascript
vue 监听窗口变化对页面部分元素重新渲染操作
Jul 28 #Javascript
You might like
兼容各大浏览器带关闭按钮的漂浮多组图片广告代码
2014/06/05 PHP
jquery+php实现导出datatables插件数据到excel的方法
2015/07/06 PHP
Yii框架通过请求组件处理get,post请求的方法分析
2019/09/03 PHP
jQuery ajax serialize()方法的使用以及常见问题解决
2013/01/27 Javascript
用js闭包的方法实现多点标注冒泡示例
2014/05/29 Javascript
node.js中的events.emitter.once方法使用说明
2014/12/10 Javascript
被遗忘的javascript的slice() 方法
2015/04/20 Javascript
基于Css3和JQuery实现打字机效果
2015/08/11 Javascript
jquery UI Datepicker时间控件的使用方法(基础版)
2015/11/07 Javascript
jquery验证邮箱格式是否正确实例讲解
2015/11/16 Javascript
js倒计时简单实现代码
2016/08/11 Javascript
详解Vue生命周期的示例
2017/03/10 Javascript
Express之get,pos请求参数的获取
2017/05/02 Javascript
jQuery实现的表格前端排序功能示例
2017/09/18 jQuery
Vue 中mixin 的用法详解
2018/04/23 Javascript
微信小程序时间轴实现方法示例
2019/01/14 Javascript
Layui点击图片弹框预览的实现方法
2019/09/16 Javascript
JS箭头函数和常规函数之间的区别实例分析【 5 个区别】
2020/05/27 Javascript
python获取当前计算机cpu数量的方法
2015/04/18 Python
python3实现短网址和数字相互转换的方法
2015/04/28 Python
Python中进程和线程的区别详解
2017/10/29 Python
python实现支付宝当面付(扫码支付)功能
2018/05/30 Python
python实现寻找最长回文子序列的方法
2018/06/02 Python
python读取txt文件中特定位置字符的方法
2018/12/24 Python
python输出pdf文档的实例
2020/02/13 Python
通过Python实现Payload分离免杀过程详解
2020/07/13 Python
详解Python3 定义一个跨越多行的字符串的多种方法
2020/09/06 Python
常用的HTML5列表标签
2017/06/20 HTML / CSS
跑步爱好者一站式服务网站:Jack Rabbit
2016/09/01 全球购物
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
主管会计岗位责任制
2014/02/10 职场文书
银行职员个人的工作自我评价
2014/02/15 职场文书
幼儿园中班上学期评语
2014/04/18 职场文书
试用期旷工辞退通知书
2015/04/17 职场文书
2016年小学生寒假家长评语
2015/10/10 职场文书
MySQL 全文检索的使用示例
2021/06/07 MySQL