Vue项目移动端滚动穿透问题】的更多相关文章

概述 今天在做 Vue 移动端项目的时候遇到了滚动穿透问题,在网上查资料后,选取了我觉得最好的方法,记录下来供以后开发时参考,相信对其他人也有用. 上层无需滚动 如果上层无需滚动的话,直接屏蔽上层的 touchmove 事件即可.示例如下: <div @touchmove.prevent> 我是里面的内容 </div> 上层需要滚动 如果上层需要滚动的话,那么固定的时候先获取 body 的滑动距离,然后用 fixed 固定,用 top 模拟滚动距离:不固定的时候用获取 top 的值…
前言 相信能看到这篇文章的你,已经是遇到了这个问题.我就不gif展示问题效果了. 鉴于此问题是面试的常客,故特地针对滚动穿透这个疑难杂症,整理了六个解决方案. 各方法操作难易不同,分别针对弹层和body是否超出一屏可滚动等不同情况.看官可以对症下药. 目录 1 body无滚动 + 弹层无滚动[css-超出隐藏] 2 body无滚动 + 弹层内部滚动[css-弹框超出滚动] 3 body滚动 + 弹层无滚动[js-阻止弹层中touchmove的默认行为] 4 body滚动 + 弹层内部滚动[js-…
vue项目的默认端口为8080,有时候处于某些原因会造成端口号的冲突,因此需要我们适当的更改其端口号来解决问题,将上图中的port更改为合适的端口号就可以,但是需要注意的是浏览器的安全限制端口号详情见:https://www.cnblogs.com/bgwhite/p/9543177.html…
安装 flexible和 postcss-px2rem(命令行安装) npm install lib-flexible --save npm install postcss-px2rem --save lexible会为页面根据屏幕自动添加<meta name='viewport' >标签,动态控制initial-scale,maximum-scale,minimum-scale等属性的值. 在Galaxy S III手机上 在iphone6/7/8 postcss-px2rem会将px转换为…
1,安装 flexible和 postcss-px2rem(命令行安装) npm install lib-flexible --save npm install postcss-px2rem --save 简要介绍这两个包的用途: flexible会为页面根据屏幕自动添加<meta name='viewport' >标签,动态控制initial-scale,maximum-scale,minimum-scale等属性的值. 例如在Galaxy S III: 例如在iphone6/7/8: po…
上滑滚动时获取内容高度.屏幕高度和滚动高度(此处#sslist要为内容是id) 内容高度  let innerHeight = document.querySelector("#sslist").clientHeight; 屏幕高度 let outerHeight = document.documentElement.clientHeight;滚动高度 let scrollTop = document.documentElement.scrollTop || document.body…
解决办法一: 将button标签换成a标签 问题代码: <span class="submitBtn" @click.stop="replyReport()"><button>{{ $t('confirm') }}</button></span> 解决方案: <span class="submitBtn" @click.stop="replyReport()"><…
功能简介 基于animate.css动画库的全屏滚动,适用于vue.js(移动端.pc)项目. 安装 npm install vue-animate-fullpage --save 使用 main.js 在main.js需要引入该插件的css和js文件 import 'vue-animate-fullpage/animate.css' import VueAnimateFullpage from 'vue-animate-fullpage' Vue.use(VueAnimateFullpage)…
问题描述 项目开发遇到一个ios独有的问题,在wkwebview中稳定复现 问题: 弹出一个蒙版,当在蒙版上面滑动的时候蒙版后面的内容滚动了 这当然是ios的bug,但是经过我们测试iphone7也会复现这个问题,所以没办法需要兼容. vue 弹框产生的滚动穿透问题 百度了下好多思路 方法1: 直接禁用滚动容器的overflow,然后记录scrollTop并恢复,这种方法不适合我们当前场景. 1. 浮层的入口有多个页面 2. 浮层后面可滚动的容器有多个(3个) 3. 滚动容器有横向和纵向滚动,很…
起因 前公司商城App项目使用的是H5开发,有微信公众号.Ios和Android三个版本,H5版本是自己写的一套框架,已经用了有些年头了,承载不下不断涌现出的新需求.而Ios和Android端通过webview加载h5文件显示,App的原生功能和H5交互的代码写得有些凌乱,在我接手项目后老板完全没给重构的时间,所以只能在做新功能的时候顺手一点点的重构.后来要做一个与原先的商城相对独立的新商城,而且新商城的入口放在老商城中.因为时间紧任务重,使用React Native或者weex的话需要将原项目…