问题:页面有很多input框,上面的input输入框,当虚拟键盘出来时没问题,但是下面的input输入框,就会出现问题,input输入框会跑到键盘后面。

网上一阵百度,找到原因:安卓手机中唤起软键盘时页面会压缩webview的高度,窗口会执行resize事件,但ios并不会。网上各种百度,尝试,都失败了,在快放弃时,找到一个可行的。直接贴代码:

 1 <template>
2 <view class="wrapper" id="wrapper" ref="wrapper">
3 <scroll-view
4 :style="{'height': scrollHeight}"
5 class="scroll-view"
6 :scroll-y="true">
7 <view class="evaluate-type-list">
8 <view
9 class="evaluate-type-item"
10 v-for="(item, index) in options"
11 :key="index">
12 <view class="item-top">
13 <view class="title">
14 {{item.title}}
15 <text class="score">({{item.score}})</text>
16 </view>
17 <view class="content">{{item.content}}</view>
18 </view>
19 <view class="item-bottom">
20 <view class="content">
21 评价
22 <input
23 v-model.number="item.evaluateScore"
24 class="input"
25 type="number"
26 placeholder="请输入评价分数"
27 @input="checkScore(item)"
28 @focus="focusInput"
29 @blur="blurInput"
30 placeholder-style='color: #d1d1d1' />
31 </view>
32 <view class="err-tip" v-if="item.isErr">{{item.errTip}}</view>
33 </view>
34 </view>
35 </view>
36 <button class="btn-submit" @tap="submit">确定</button>
37 </scroll-view>
38 </view>
39 </template>
40
41 <script>
42 export default {
43 data() {
44 return {
45 scrollHeight: 'calc(100vh - 20upx)',
46 }
47 },
48 methods: {
49 focusInput() {
50 // 获取系统信息
51 let info = uni.getSystemInfoSync();
52 if(info.platform === 'ios') {
53 setTimeout(() => {
54 let viewInfo = this.$refs.wrapper.$el.getBoundingClientRect();
55 // 获取视图偏移量,重新定位操作栏
56 this.bottomVal = Math.abs(parseFloat(viewInfo.top))
57 // 重置编辑区高度
58 this.scrollHeight = `calc(100vh - ${98 + this.bottomVal}px )`
59 }, 500)
60 }
61 },
62 blurInput() {
63 this.scrollHeight = 'calc(100vh - 180upx)';
64 },
65
66 }
67 }
68 </script>
69
70 <style lang="scss" scoped>
71 </style>

终于解决困扰一个星期的问题。如果对你有帮助,请给个赞,谢谢!

uni-app打包h5页面ios唤起软键盘踩坑的更多相关文章

  1. H5页面关于android软键盘弹出顶起底部元素的解决方案

    应用场景:用div在移动端页面设置一个底部工具栏,css的代码大概如下: .tool{ width: 100%; height: 60px; position: fixed; left: 0px; b ...

  2. 微信H5页面 会被软键盘顶起来

    问题描述:H5页面在微信中打开,input输入框获取焦点时,页面被软键盘顶上去:关闭软键盘时,页面不会自动下来(恢复初始状态) H5页面在微信中初始状态如下图: input输入框获取焦点时,页面被软键 ...

  3. h5页面ios,双击向上滑动,拖拽到底部还能继续拖拽(露出黑色背景)

    h5页面ios,双击向上滑动,拖拽到底部还能继续拖拽 标签: 手机 2016-02-02 18:09 696人阅读 评论(0) 收藏 举报   在ios下,双击屏幕某些地方,滚动条会自动向上走一段. ...

  4. 微信内置浏览器浏览H5页面弹出的键盘遮盖文本框的解决办法(转)

    最近在做微信公众号的内嵌页面,发现点击输入框时键盘盖住文本框,找到一段代码解决了这个问题. iOS和android手机都已亲测,需要的可以直接拷贝到代码中使用. js代码如下: $(function ...

  5. iOS让软键盘消失的简单方法

    大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请多提意见,如果觉得不错请多多支持点赞.谢谢! hopy ;) 一些文本输入控件等待输入时会弹出软键盘,我们可以设置这些控件的 ...

  6. 页面的input唤醒软键盘再收起后,页面会出现软键盘高度的空白背景

    微信浏览器在版本6.7.4及以上会有这个bug:页面的input唤醒软键盘再收起后,页面会出现软键盘高度的空白背景,触摸到滚动条会消失恢复! 解决代码 后台框架嵌入iframe的情景,iframe内部 ...

  7. ios获取软键盘完成事件

    ios获取软键盘完成事件,通过判断input的onBlur事件即可

  8. H5页面中唤起native app

    现在各类app,分享出去的H5页面中,一般都会带着一个立即打开的按钮,如果本地安装了app,那么就直接唤起本地的app,如果没有安装,则跳转到下载.这是一个很正常的推广和导流量的策略,最近产品经理就提 ...

  9. iOS原生App与H5页面交互笔记

    文/MikeZhangpy(简书作者)原文链接:http://www.jianshu.com/p/4ed3e5ed99c6著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”. 最近在做一个项 ...

  10. h5项目中关于ios手机软键盘导致页面变形的完美解决方案

    1.项目背景:vue项目,手机加短信验证码登录: 2.问题: 在ios中input吊起软键盘,输入完成后,收起软件盘,页面不会回弹,导致页面下方出现空白,也就是页面变形: 3.最开始的解决方案是,用i ...

随机推荐

  1. Oracle数据库卸载器 - 开源研究系列文章

    今天无事,把网上搜到的Oracle数据库卸载器的软件更新到C#的Winform界面的操作上. 1. 程序目录: 与笔者的其它软件类似,目录如下: 2. 使用的类: 这里主要使用了一个处理函数: 3. ...

  2. 时间加权平均价格算法(TWAP)和成交量平均算法(VWAP)在量化回测的应用

    为什么要引入TWAP和 VWAP? 为了评估策略的资金容量,我们对M.trade模块里买入点和卖出点这两个参数进行了更丰富的扩展,支持了策略能够按更丰富的算法交易价格(WAP)进行撮合. 如果资金是1 ...

  3. 从 ECMAScript 6 角度谈谈执行上下文

    大家好,我是归思君 起因是最近了解JS执行上下文的时候,发现很多书籍和资料,包括<JavaScript高级程序设计>.<JavaScript权威指南>和网上的一些博客专栏,都是 ...

  4. NC65获取Token以及相关信息

    private static void setToken() { IPriviledgedGenerator tokenGenerator = (IPriviledgedGenerator) Busi ...

  5. CentOS 7上使用Python 3和虚拟环境

    在CentOS 7上使用Python 3和虚拟环境,请按照以下步骤操作: 首先,确保您的系统已安装Python 3.您可以使用以下命令检查Python 3是否已安装: python3 --versio ...

  6. 神经网络优化篇:梯度检验应用的注意事项(Gradient Checking Implementation Notes)

    梯度检验应用的注意事项 分享一些关于如何在神经网络实施梯度检验的实用技巧和注意事项. 首先,不要在训练中使用梯度检验,它只用于调试.意思是,计算所有\(i\)值的\(d\theta_{\text{ap ...

  7. window10 AppX Deployment Service (AppXSVC)占用大量内存导致资源管理器卡死无响应

    window10 AppX Deployment Service (AppXSVC)占用大量内存导致资源管理器卡死无响应,导致无法进入桌面打开软件等等. 1.打开任务管理的情况下,先结束卡死的资源管理 ...

  8. C++通过文件指针获取文件大小

    目录 1. 叙述 2. 结论 1. 叙述 对于读取本地文件,很多时候需要预先知道本地文件的大小在进行读取.网上给出的方案是移动文件指针,计算文件头和文件尾的偏移,计算出文件的大小.但是我总觉得这样做可 ...

  9. MySQL进阶篇:详解索引概述

    2.1 MySQL进阶篇:第二章_二.一_索引概述 2.1.1 介绍 索引(index)是帮助MySQL高效获取数据的数据结构(有序).在数据之外,数据库系统还维护着满足 特定查找算法的数据结构,这些 ...

  10. C++篇:第十一章_标准库_知识点大全

    C++篇为本人学C++时所做笔记(特别是疑难杂点),全是硬货,虽然看着枯燥但会让你收益颇丰,可用作学习C++的一大利器 十一.标准库 include头文件: ① 一般来说,导入objective c的 ...