弹框可滚动且阻止页面滚动
vue项目里,如果一个列表页面弹框,弹框内容很长,也需要滚动,这个时候就不能在弹框的DOM上加@touchmove.prevent,否则弹框内也禁止滚动了
这个时候得用js来控制根节点的样式来实现弹框显示时禁止根节点页面滚动,弹框消失时恢复根节点页面滚动。
data: { showTip = false }, watch: { showTip(v){ const dom = document.querySelector('.content-wrapper') //如果提示框显示,就把页面根节点设为不可滚动,弹框消失可以滚动 if (v) { dom.style.height = '100vh' // 设备视口高度 dom.style.overflow = 'hidden' } else { dom.style.height = 'unset' dom.style.overflow = 'unset' } } }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了