解决vue-cli单页面手机应用input点击手机端虚拟键盘弹出盖住input问题


Posted in Javascript onAugust 25, 2018

在用vue-cli脚手架搭建手机H5页面应用的时候,其中一页中部有input,底部有position:absolute;bottom:0的元素,

当点击input框时在安卓手机上出现了:

1 虚拟键盘弹出盖住input

2 底部定位的元素被挤上来

网络上很多关于body设定宽高以及scrolltop的方法都不管用,因为这里是路由页面,根据网上的思路,吊起输入键盘的时候页面的高度是变化的,监听window.onresize,判断是否吊起键盘,然后设定底部模块的隐藏和显示,整个块元素的margintop就可以实现了。

代码如下

mounted () {
 this.clientHeight = document.documentElement.clientHeight;
 const that = this;
 // 安卓手机键盘吊起挡住输入框

 window.onresize = function() {

  if(document.documentElement.clientHeight < that.clientHeight) {
  // scrollVal为负值
  let scrollVal = document.documentElement.clientHeight-that.clientHeight;
  $(".alert-main").css("marginTop",scrollVal);
  $(".bottom-create").hide();
  }else {
  $(".alert-main").css("marginTop",0);
  $(".bottom-create").show();
  }
  
 };
 },

今天这个bug 遇到了新问题,同样的华为手机上,当从别的路由吊起输入键盘的时候回到当前路由,

document.documentElement.clientHeight 就变成了减去输入键盘高度的值,

这时需要在页面第一次加载将document.documentElement.clientHeight记录到store中,store中的值不会因为页面重新渲染而改变。

以上这篇解决vue-cli单页面手机应用input点击手机端虚拟键盘弹出盖住input问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
学习JS面向对象成果 借国庆发布个最新作品与大家交流
Oct 03 Javascript
用js实现的自定义的对话框的实现代码
Mar 21 Javascript
基于Asp.net与Javascript控制的日期控件
May 22 Javascript
jQuery的slideToggle方法实例
May 07 Javascript
jquery cookie实现的简单换肤功能适合小网站
Aug 25 Javascript
离开当前页面前使用js判断条件提示是否要离开页面
May 02 Javascript
JavaScript实现经纬度转换成地址功能
Mar 28 Javascript
parabola.js抛物线与加入购物车效果的示例代码
Oct 25 Javascript
vue 解决文本框被键盘遮住的问题
Nov 06 Javascript
用Node写一条配置环境的指令
Nov 14 Javascript
vue 使用async写数字动态加载效果案例
Jul 18 Javascript
小程序实现可拖动的悬浮按钮
Sep 07 Javascript
对vue 键盘回车事件的实例讲解
Aug 25 #Javascript
vue点击input弹出带搜索键盘并监听该元素的方法
Aug 25 #Javascript
vue 自定义指令自动获取文本框焦点的方法
Aug 25 #Javascript
vue.js项目 el-input 组件 监听回车键实现搜索功能示例
Aug 25 #Javascript
vue+mousemove实现鼠标拖动功能(拖动过快失效问题解决方法)
Aug 24 #Javascript
对vue2.0中.vue文件页面跳转之.$router.push的用法详解
Aug 24 #Javascript
微信小程序Getuserinfo解决方案图解
Aug 24 #Javascript
You might like
《Re:从零开始的异世界生活 冰结之绊》
2020/04/09 日漫
用PHP实现小型站点广告管理
2006/10/09 PHP
一个分页的论坛
2006/10/09 PHP
一个基于PDO的数据库操作类
2011/03/24 PHP
php将金额数字转化为中文大写
2015/07/09 PHP
详解WordPress中给链接添加查询字符串的方法
2015/12/18 PHP
PHP中Socket连接及读写数据超时问题分析
2016/07/19 PHP
图片按比例缩放函数
2006/06/26 Javascript
js DOM模型操作
2009/12/28 Javascript
JS画线(实例代码)
2013/11/20 Javascript
js中document.write的那点事
2014/12/12 Javascript
分享两个手机访问pc网站自动跳转手机端网站代码
2020/12/24 Javascript
整理一些最近经常遇到的前端面试题
2017/04/25 Javascript
微信小程序基于canvas渐变实现的彩虹效果示例
2019/05/03 Javascript
微信小程序button标签open-type属性原理解析
2020/01/21 Javascript
jQuery实现异步上传一个或多个文件
2020/08/17 jQuery
Python使用cookielib模块操作cookie的实例教程
2016/07/12 Python
python高效过滤出文件夹下指定文件名结尾的文件实例
2018/10/21 Python
Python数据分析:手把手教你用Pandas生成可视化图表的教程
2018/12/15 Python
使用python3实现操作串口详解
2019/01/01 Python
matplotlib实现区域颜色填充
2019/03/18 Python
python学生管理系统学习笔记
2019/03/19 Python
通过python3实现投票功能代码实例
2019/09/26 Python
Python面向对象封装操作案例详解 II
2020/01/02 Python
基于opencv的selenium滑动验证码的实现
2020/07/24 Python
介绍CSS3使用技巧5个
2009/04/02 HTML / CSS
护士专业推荐信
2013/11/02 职场文书
工作时间上网检讨书
2014/02/03 职场文书
党风廉政建设责任书
2014/04/14 职场文书
改进作风怎么办发言材料
2014/08/17 职场文书
银行授权委托书范本
2014/10/04 职场文书
入党积极分子个人总结
2015/03/02 职场文书
大学生就业指导课心得体会
2016/01/15 职场文书
学者《孟子》名人名言
2019/08/09 职场文书
PHP连接MSSQL数据库案例,PHPWAMP多个PHP版本连接SQL Server数据库
2021/04/16 PHP
解决tk mapper 通用mapper的bug问题
2021/06/16 Java/Android