uniapp: IOS微信小程序输入框部分被软键盘遮挡问题

一、问题描述

在IOS微信小程序中输入框底部被软键盘遮挡:

二、解决方案

小程序输入框被软键盘遮挡一部分的问题可以通过以下几种方法解决‌:

‌1.使用cursorSpacing属性‌ :在input或textarea元素上添加cursorSpacing属性,并设置一个合适的值(如20),这样可以留出光标到软键盘的距离,避免输入框被遮挡‌。

‌2.动态调整输入框位置‌:

‌(1)获取键盘高度‌:给输入框添加keyboardheightchange事件,通过事件获取键盘的高度。例如:

复制代码
keyboardheightchange(event) {
  let height = event.detail.height || 0;
  this.keyBoardHeight = height 
}

(2)调整输入框位置‌:根据获取到的键盘高度动态调整输入框的位置。例如,将发送消息的盒子设置为固定位置,并动态调整其bottom值:

复制代码
<div class="send-msg" :style="{bottom: keyBoardHeight +'px'}">
  <textarea @keyboardheightchange="keyboardheightchange"></textarea>
</div >

注意:

(1)使用fixed属性‌:在弹窗定位中时需要加入fixed属性,否则在软键盘弹出时输入框可能不会显示在软键盘上面‌。

‌(2)处理安全区域‌:在iPhone X等有底部安全区域的设备上,可能需要特别处理安全区域。例如,在u-popup组件中设置safeAreaInsetBottom为false,以确保输入框在软键盘弹出时不会被遮挡‌。

相关推荐
weixin_lynhgworld1 小时前
抽取类盲盒小程序的五条合规红线意味着什么?
小程序
现任明教教主~1 小时前
运营级多门店洗车贴膜汽车在线核销保养服务系统洗车预约洗车系统消费分佣扫码核销系统
微信小程序·小程序·汽车
小小王app小程序开发2 小时前
盲盒微信小程序开发实战:架构、核心难点与实现方案
小程序
陪我去看海5 小时前
被要求猛出小程序,做了这个多平台多环境的部署替我承受压力
前端·微信小程序·抖音小程序
無名路人5 小时前
小程序点餐页吸顶滚动之分类按需加载,上划切换
前端·vue.js·微信小程序
用户7884773163414 小时前
一个门店预约小程序,真正难的不是页面,是这 4 个后端接口
微信小程序
CHB14 小时前
一文讲透原生渲染和自渲染
flutter·react native·uni-app
老马识码14 小时前
一个围棋小程序里的七个 Agent:场景、提示词和结构化输出的门道
人工智能·微信小程序
拖孩14 小时前
一个人 + AI 做的小程序,一个半月把服务器钱赚回来一半了
前端·后端·微信小程序
前端小万6 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序