解决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 相关文章推荐
ExtJS 2.0实用简明教程 之ExtJS版的Hello
Apr 29 Javascript
Jquery插件之打造自定义的select标签
Nov 30 Javascript
js判断背景图片是否加载成功使用img的width实现
May 29 Javascript
JQuery实现动态适时改变字体颜色的方法
Mar 10 Javascript
基于jQuery实现搜索关键字自动匹配功能
Mar 26 Javascript
超赞的jQuery图片滑块动画特效代码汇总
Jan 25 Javascript
angular双向绑定模拟探索
Dec 26 Javascript
Bootstrap栅格系统简单实现代码
Mar 06 Javascript
基于JavaScript实现新增内容滚动播放效果附完整代码
Aug 24 Javascript
浅谈vue-cli 3.0.x 初体验
Apr 11 Javascript
使用element-ui +Vue 解决 table 里包含表单验证的问题
Jul 17 Javascript
JavaScript 实现拖拽效果组件功能(兼容移动端)
Nov 11 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
apache rewrite_module模块使用教程
2008/01/10 PHP
php的一个简单加密解密代码
2014/01/14 PHP
php更新mysql后获取改变行数的方法
2014/12/25 PHP
php+xml结合Ajax实现点赞功能完整实例
2015/01/30 PHP
Thinkphp框架开发移动端接口(2)
2016/08/18 PHP
php从数据库中读取特定的行(实例)
2017/06/02 PHP
php-fpm服务启动脚本的方法
2018/04/27 PHP
跟着JQuery API学Jquery 之二 属性
2010/04/09 Javascript
JS对img标签进行优化使用onerror显示默认图像
2014/04/24 Javascript
深入理解JavaScript系列(27):设计模式之建造者模式详解
2015/03/03 Javascript
jQuery实现定时读取分析xml文件的方法
2015/07/16 Javascript
jquery编写Tab选项卡滚动导航切换特效
2020/07/17 Javascript
JavaScript几种数组去掉重复值的方法推荐
2016/04/12 Javascript
jQuery实现下拉框功能实例代码
2016/05/06 Javascript
详解AngularJS 模块化
2017/06/14 Javascript
浅谈vue后台管理系统权限控制思考与实践
2018/12/19 Javascript
为什么要使用Vuex的介绍
2019/01/19 Javascript
vue-axios同时请求多个接口 等所有接口全部加载完成再处理操作
2020/11/09 Javascript
[02:05]2014DOTA2国际邀请赛 BBC外卡赛赛后总结
2014/07/09 DOTA
详解 Python 读写XML文件的实例
2017/08/02 Python
python基础教程项目三之万能的XML
2018/04/02 Python
python爬取网页转换为PDF文件
2018/06/07 Python
浅谈python实现Google翻译PDF,解决换行的问题
2018/11/28 Python
使用Python制作简单的小程序IP查看器功能
2019/04/16 Python
小结Python的反射机制
2020/09/28 Python
美国沙龙美发产品购物网站:Hair.com by L’Oreal
2020/11/09 全球购物
科技开发中心办公室主任岗位责任制
2014/02/10 职场文书
工程类专业自荐信范文
2014/03/09 职场文书
园艺师求职信
2014/03/10 职场文书
cf战队收人广告词
2014/03/14 职场文书
投资协议书范本
2014/04/21 职场文书
电影开国大典观后感
2015/06/04 职场文书
六一亲子活动感想
2015/08/07 职场文书
查看nginx配置文件路径和资源文件路径的方法
2021/03/31 Servers
Redis调用Lua脚本及使用场景快速掌握
2022/03/16 Redis
Java 多态分析
2022/04/26 Java/Android