弹起键盘,页面不滑动
var mo = function(e){
e.preventDefault();
}
var u = navigator.userAgent;
var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端
var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
if(isAndroid){
const innerHeight = window.innerHeight;
window.addEventListener('resize',()=>{
const newInnerHeight = window.innerHeight;
if(innerHeight > newInnerHeight){
alert('键盘弹窗');
document.addEventListener('touchmove',mo,{passiive:false})
}else{
alert('键盘收起');
document.removeEventListener('touchmove',mo,{passiive:false})
document.body.style.overflow = '';
}
})
}else if(isiOS){
window.addEventListener('focusin',()=>{
alert('ios键盘弹窗');
document.addEventListener('touchmove',mo,{passiive:false})
})
window.addEventListener('focusout',()=>{
alert('ios键盘收起');
document.removeEventListener('touchmove',mo,{passiive:false})
document.body.style.overflow = '';
})
}
遮罩层底部页面不滑动
var mo = function(e){ // 公共方法,需要在同一方法内才生效,VUE可放在script下方
e.preventDefault();
}
open(){
document.addEventListener('touchmove',mo,{passiive:false})
},
close(){
document.removeEventListener('touchmove',mo,{passiive:false})
document.body.style.overflow = '';
},