您的位置:首页 > 移动开发 > IOS开发

原生js解决 IOS 6s机 input/textarea输入完成键盘拉回后页面不置顶

ZuiChuDeQiDian 2019-03-29 16:26 106 查看
版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 本文链接:https://blog.csdn.net/ZuiChuDeQiDian/article/details/95681938

撸了今年阿里、网易和美团的面试,我有一个重要发现.......>>>

问题描述:

h5开发时,input/textarea输入框在IOS 6s手机中,获取焦点时,键盘会拉起将整个页面向上推,输入完成后键盘收回但是页面还是停留在键盘拉起的状态),如下图所示:

解决方案:

0.判断是否是IOS机

 

//判断是否是安卓还是ios
isAndroid() {
let u = navigator.userAgent;
let isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1; //android终端或者uc浏览器
let isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端
return isAndroid === true;
}

1.当输入完成(输入框失去焦点onblur)时,强制将页面置顶

//IOS 6s键盘收回
blurAddr() {
if (isAndroid()) return;
window.scroll(0, 0);//失焦后强制让页面归位
}
标签: 
相关文章推荐