4***@qq.com
4***@qq.com
  • 发布:2020-08-25 18:09
  • 更新:2021-09-16 20:43
  • 阅读:693

【报Bug】web-view在移动端,嵌入html。软键盘遮挡住底部多行文本框

分类:uni-app

产品分类: uniapp/App

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: window7 旗舰版

HBuilderX类型: 正式

HBuilderX版本号: 2.8.3

手机系统: Android

手机系统版本号: Android 10

手机厂商: 华为

手机机型: 华为:POT-AL00a

页面类型: vue

打包方式: 云端

项目创建方式: HBuilderX

操作步骤:

创建vue页面A,创建web-view标签。引入html。html代码如下

<div style="width: 100%;height: calc(100% - 50px);overflow-y: scroll;overflow-x: hidden;background-color: #0062CC;"></div>  
<div style="position: fixed;bottom: 0;height: 50px;background-color: #FFFFFF;">  
    <textarea rows="1" cols="20" placeholder="写评论" style="position: absolute;" ></textarea>  
</div>

创建vue页面B,在底部创建多行文本框,代码如下

.vidlay-bottom{  
                position: fixed;  
        bottom: 0;  
        width: 100%;height: 100upx;box-sizing: border-box;padding-left: 40upx;background-color: #FFFFFF;  
    }  
.cont-text{  
        width: 350upx;display: inline-block;height: 60upx;line-height: 60upx;  
    }  
<view class="videoplay-bottom">  
        <textarea   
    ref="infos"  
    :cursor-spacing="10"  
    :adjust-position="true"  
    v-model="infos"   
    class="cont-text"  
    placeholder="写评论">  
        </textarea>  
</view>

先进入页面A点击多行文本框
在进入页面B点击多行文本框
再进入页面A点击多行文本框

预期结果:

页面A的多行文本应该一直在软键盘的上面

实际结果:

只有第一次进入页面A的时候,多行文本框在软键盘的上面。在点击B
页面的多行文本框之后,A页面的多行文本框一直被软键盘遮挡

bug描述:

先进入web-view 所在的vue的页面,内部只有web-view(嵌入一个html页面);点击底部的多行文本框,文本框可以停留在软键盘的上面。
但是进入到另一个vue页面,点击它的多行文本之后,嵌入web-view的html的多行文本就会一直被软键盘遮挡。并且此时html页面无法监听到$(window).resize,也就无法手动更改文本框的位置了

2020-08-25 18:09 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com - 毒角色

一年多了 这个问题到现在没有解决

该问题目前已经被锁定, 无法添加新回复