1. view

<view class="bottom-wri-box" :style="{bottom: bottomHeight}">
<image @tap="changeChander" class="left-cont-icon" :src="data:imageUrl+'/huifu-icon.png'"></image>
<input
:adjust-position="flasFlag"
@confirm="AddSendMess"
class="mormal-input uni-input"
maxlength="300"
@focus="getheightCont"
@blur="initheight"
confirm-type="send"
placeholder="说点什么"
v-model="writeCont" />
</view>

2. data中的值,用于控制input输入框的位置;

flasFlag:false, //表示input输入时,页面不会往上推动
bottomHeight:'0rpx',//input框的数据
keywordHeight:'0rpx',

3.mthods中的方法动态控制input框中的位置

methods:{
getheightCont(e){
// input 展示的位置
this.bottomHeight=(e.detail.height)+"px";
this.keywordHeight=(e.detail.height)+"px";
},
initheight(){
this.bottomHeight='0rpx'
},
}

4.css

.bottom-wri-box{
width:100%;
background-color:#fff;
position:fixed !important; //一定要固定定位哈 height: 152rpx;
display: flex;
align-items: center;
justify-content: center;
z-index: 1000 !important;
box-shadow: 0px -2px 20px 0px rgba(0,0,0,0.05);
.mormal-input{
width: 604rpx;
height: 80rpx;
background: #f5f5f5;
border-radius: 44rpx;
padding-left: 34rpx;
box-sizing: border-box;
padding-right: 32rpx;
//注意input框中内容太多可能会出现样式移溢出
white-space:normal !important;
word-break:break-all !important; margin-left:28rpx;
}
// 左侧图标 右侧表情
.left-cont-icon{
width: 54rpx;
height: 54rpx;
}
}
我们在输入的时候,发现页面并没有往上推动;
这样我们就完美的解决了input框将页面往上推动的机制;

在app上可能出现的问题

由于我们的小程序有些时候会打包成为app.
在app上会出现的问题。
点击输入法右侧的 ^符号。输入法会自动隐藏。
这样就回导致input展示的位置不正确
处理办法是:使用onKeyboardHeightChange进行监听键盘的高度。
当键盘判断小于10,说明键盘被隐藏了!

详细的代码

// 处理app软键盘
onReady() {
// 监听键盘高度变化,处理用户点击输入法中的^,input框位置显示有问题
uni.onKeyboardHeightChange(res => {
if(res.height < 10){
this.bottomHeight='0rpx'
}else{
//这里就不要带单位了,因为加上单位视觉上会有一点缓慢向上推的过程
this.bottomHeight=this.keywordHeight
}
})
},

小程序uni-app处理input框将页面往上推动的解决办法的更多相关文章

  1. 微信小程序避坑指南——input框里的图标在部分安卓机里无法点击的问题

    问题场景: 下图中的显隐密码和验证码均为包裹在 input标签 中的 image标签, 但在开发测试中发现点击不了这俩个image标签,因为是被input标签的padding挡住了. 解决方法:将im ...

  2. Java生鲜电商平台-小程序或者APP优惠券的设计与源码实战

    Java生鲜电商平台-小程序或者APP优惠券的设计与源码实战 说明:Java生鲜电商平台-小程序或者APP优惠券的设计与源码实战,优惠券是一种常见的促销方式,在规定的周期内购买对应商品类型和额度的商品 ...

  3. 开源电影项目源码案例重磅分析,一套代码发布小程序、APP平台多个平台

    uni-app-Video GitHub地址:https://github.com/Tzlibai/uni-app-video 一个优秀的uni-app案例,旨在帮助大家更快的上手uni-app,共同 ...

  4. 小程序和APP谁将主导未来?

    APP和小程序的未来会怎么样?小程序的出现真的会加速APP的灭亡吗?今天这篇文章,是对小程序和App未来发展格局的一些思考,更多的是想提醒各位拥抱小程序的的参与者,我们在决定参与这场狂欢的同时,切勿盲 ...

  5. 微信小程序开发之如何哪获取微信小程序的APP ID

    微信小程序的开发工具,在新建项目的时候,默认提示填写APP ID,如果不填写AppID 也是可以本地测试和开发的,但是无法通过手机调试,只能在开发工具里查看 如果需要真机调试微信小程序,需要安装微信6 ...

  6. 几张图带你轻轻松松了解小程序和APP的区别

    微信"小程序"的公测一开放,立即在朋友圈刷屏无数,仿佛人人都在互联网圈.但是因为微信限制,程序还不能发布使用,所以也极少人看到真正的小程序是怎么样的. 小程序驿站专注微信小程序的开 ...

  7. 统一微信公众号、小程序、APP的用户信息

     上次接手一个项目需要整合公众号.小程序以及APP的用户,查阅了微信文档以及一些作者的文章,中间踩了不少坑,在此记录一下解决的流程. 要点  实现统一信息的有以下几点:  1. 在微信开放平台绑定需要 ...

  8. 微信小程序和App的UI设计有什么异同吗?

    大家总是把小程序和App放在一起比,因此我也花时间看了一下小程序的开发指南,尤其是UI部分的设计和原则,今天就拿它和苹果的HIG(Human Interface Guidelines)做个比较,其实两 ...

  9. Java生鲜电商平台-服务化后的互联网架构实战(针对生鲜电商小程序或者APP)

    Java生鲜电商平台-服务化后的互联网架构实战(针对生鲜电商小程序或者APP) “微服务架构”的话题非常之火,很多朋友都在小窗我,说怎么做服务化?解答“怎么做”之前,先得了解“为什么做”. 画外音:做 ...

  10. 【微信小程序】App.js生命周期

    1.小程序的生命周期-App.js App() 必须在 app.js 中注册,且不能注册多个.所以App()方法在一个小程序中有且仅有一个. App({ onLaunch: function () { ...

随机推荐

  1. 服务器cli模式下的定时器

    有时候需要一部分后台业务异步的处理,比如处理redis队列啊,处理mysql统计啊,数据同步啊,这种长时间任务,但是又需要每段时间去看看的,发现linux cron最小只能支持每分钟的任务 分 时 天 ...

  2. CodeForces - 1353D Constructing the Array

    CodeForces - 1353D 这道题也可能比较简单,主要是要想到优先队列要怎么使用,这一点如果用递归会写不了 但是因为对优先队列不太熟悉,只有被提示可以用优先队列才想到要怎么用, 还是很重要的 ...

  3. DoH(DNS on HTTPS)和DoT(DNS on TLS)协议详解

    目录 目录 简介 详情 请求 DoH DoT 返回 DoH DoT c-ares的使用 打包 解析 简介 DNS over HTTPS利用HTTP协议的GET命令发出经由JSON等编码的DNS解析请求 ...

  4. kube-apiserver 高可用,keepalived + haproxy

    为什么要做高可用 在生产环境中,kubernetes 集群中会多多个 master 节点,每个 master 节点上都会部署 kube-apiserver 服务,实现高可用.但是 client 访问 ...

  5. nvm安装node.js无法使用

    前情 最近在使用某此第三方模块需要依赖不同的node版本,于是想通nvm来管理node版本 坑 网上下载nvm-window的安装包,一步步傻瓜式安装下去,发现nrm无法使用,设置环境变量也没有用,再 ...

  6. 【分块】LibreOJ 6282 数列分块入门6

    题目 https://loj.ac/p/6282 题解 数据范围 \(1 \leq n \leq 10^5\),因此进行分块最多分 \(\sqrt{10^5} ≈ 318\) 块.且数据是随机生成的, ...

  7. Electron 通信

    1.web向主进程发送消息 (单项) 使用ipcMain.on 监听事件 const hanle = (event, data) => { console.log(event) console. ...

  8. 使用terraform管理Proxmox VE资源

    terraform-proxmox 使用terraform管理proxmox资源 Using terraform to manage proxmox resources env: Proxmox VE ...

  9. Vscode实现应用qss样式表

    qss简介 qss(Qt Style Sheets)是一种基于CSS的样式语言,用于描述用户界面元素的外观和感觉.qss可以让用户在不修改代码的情况下,轻松地自定义应用程序的外观. 其语法基本如下: ...

  10. File and Code template

    /** * @author muzhi.zhong * @author <a href="mailto:muzhi.z@xxx.cn">muzhi.z</a> ...