支付宝小程序实现类似微信多行输入

这篇具有很好参考价值的文章主要介绍了支付宝小程序实现类似微信多行输入。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

先来看看微信小程序输入框展示效果:
支付宝小程序实现类似微信多行输入,前端,小程序,小程序
输入超过 8 行的时候会出现滚动,这样做的好处就是输入框不会直接顶到页面最顶部。

支付宝小程序实现多行输入框:使用textarea多行输入框实现

思路一:

textarea 标签设置max-height, 标签自带属性auto-height自动增高

<view class="test">
  <view class="top">
    
  </view>
  <view class="footer">
    <textarea placeholder="Input multiple lines" auto-height maxlength="{{-1}}"  class="textarea" show-count="{{false}}" enableNative="{{false}}"></textarea>
  </view>
</view>

// css 
.textarea {
  max-height: 150rpx !important;
  overflow-y: scroll;
}

实际效果最大高度未生效, 会一直增高,该方法不行
支付宝小程序实现类似微信多行输入,前端,小程序,小程序

思路二

多行文本框套一个容器,容器设置最大高度并y轴滚动,

<view class="test">
  <view class="top">
    
  </view>
  <view class="footer">
    <view class="textarea-content">
      <textarea placeholder="Input multiple lines" auto-height maxlength="{{-1}}"  class="textarea" show-count="{{false}}" enableNative="{{false}}">
      </textarea>
    </view>
  </view>
</view>

// css
.textarea-content {
  max-height: 150rpx !important;
  overflow-y: scroll;
}

可以实现,但是ios会出现如下问题,超出的文本全选中会在页面透漏出光标,光标在滚动层里也会透出
支付宝小程序实现类似微信多行输入,前端,小程序,小程序

思路三

多行文本框设置绝对定位高度设置100%,增加一个兄弟元素设置max-height,监听输入事件记录输入的value, 把value放到兄弟元素里,由兄弟元素撑开父元素,随之文本框也自动增高和减少

<view class="test">
  <view class="top">
    
  </view>
  <view class="footer">
    <view class="textarea-content">
      <textarea placeholder="Input multiple lines" onInput="onInput"  maxlength="{{-1}}"  class="textarea" show-count="{{false}}" enableNative="{{false}}"></textarea>
      <text class="textarea-brother">{{value}}</text>
      
    </view>
  </view>
</view>
// css
.textarea-content {
  position: relative;
}
.textarea {
  height: 100%;
  position: absolute;
  top: -150rpx;
  height: 100%;
  width: 100%;
}
.textarea-brother {
  width: 100%;
  min-height: 42px;
  display: block;
  max-height: 150rpx;
  word-break: break-all;
  word-wrap: break-word;
}

解决了光标超出滚动层的问题,但是input只能监听输入到输入框的字,输入法切换到中文,会先用拼音占输入框的高度,期望高度也是可以增高的,但是由于监听不到输入事件,这种处理方法会遮盖拼音

最终解

找到了支付宝原生组件的样式表https://open.alipay.com/portal/forum/post/120501011

支付宝小程序实现类似微信多行输入,前端,小程序,小程序

通过命名可以猜测这个是文本输入框内容样式class属性值,通过修改样式设置 max-height, 自动增高开启就完美实现多行输入到一定高度不再增高,进行滚动

<view class="test">
  <view class="top">
    
  </view>
  <view class="footer">
    <view class="textarea-content">
      <textarea placeholder="Input multiple lines" onInput="onInput" maxlength="{{-1}}" auto-height  class="textarea" show-count="{{false}}" enableNative="{{false}}"></textarea>
      <!-- <text class="textarea-brother">{{value}}</text> -->
      
    </view>
  </view>
</view>
// css
.textarea {
  .a-textarea-content {
    max-height: 150rpx !important;
  }
}

效果如下:
支付宝小程序实现类似微信多行输入,前端,小程序,小程序文章来源地址https://www.toymoban.com/news/detail-836010.html

到了这里,关于支付宝小程序实现类似微信多行输入的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 如何将支付宝小程序迁移至微信/FinClip运行

    许多小程序开发者都会遇到这样一个困扰,自己已经在微信,支付宝等不同环境中开发了对应的小程序代码,但在不同平台中的小程序语法并不一致。 本篇文章将通过手把手入门的方式,快速了解「如何使用第三方工具互相转换小程序代码进行?」相关问题。 顾名思义,在

    2024年02月11日
    浏览(44)
  • 【uniapp】将微信小程序的代码兼容支付宝小程序(持续更新)

    目前本身就有一套完善的微信小程序(兼容h5)的代码,现在的需求是将它编译成支付宝小程序,做好兼容的处理,以便后续接入支付宝服务商,在这里简单记录一下目前发现的把微信小程序编译成支付宝小程序的问题和解决方案。 建议配合其他人的记录一起看,这里只是我

    2024年02月09日
    浏览(142)
  • uniapp兼容微信小程序和支付宝小程序遇到的坑

    改为v-if。 App端和H5端支持 v-html ,微信小程序会被转为 rich-text,其他端不支持 v-html。 解决方法:去插件市场找一个支持跨端的富文本组件。 兼容微信小程序和支付宝小程序  pages.json: 给支付宝的导航栏设置 透明 agent页面: 支付宝加上 my.setNavigationBar 设置标题文字即可,

    2024年02月15日
    浏览(84)
  • uni app Signalr 支持 微信小程序和支付宝小程序

    使用方法

    2024年02月16日
    浏览(46)
  • 小成本搏大流量:微信/支付宝小程序搜索排名优化

    随着移动互联网的快速发展,小程序已成为企业和个人开发者重要的流量入口和业务承载平台。而小程序搜索排名则是影响小程序曝光量、用户获取及业务转化的关键因素。小柚在本文和大家探讨如何制定有效的优化方案,提升小程序在搜索结果中的排名。 首先跟我一起来了

    2024年04月25日
    浏览(34)
  • uniapp开发APP跳转微信小程序和支付宝小程序(安卓版)

    开发APP时需要支付时跳转微信或者支付宝去支付,但是因为银行合作问题不能直接跳转,所以选择跳转到小程序页面进行支付,微信小程序和支付宝小程序写法不同 APP跳转微信小程序 (需要manifest.json中APP模块配置Share中微信分享保持开启) 微信小程序原始id在微信开放平台查

    2024年02月06日
    浏览(55)
  • uniapp 之 微信小程序、支付宝小程序 对于自定义导航栏的不同

    目录 前言  微信小程序 代码  支付宝小程序 首页配置文件 二级菜单页面  配置 总结  不同 相同  小程序都是 uni-app 写的 不是原生 pages.json文件中配置 重点: \\\"navigationStyle\\\": \\\"custom\\\",  // 导航栏样式  首页 vue文件 template  script  备注:  height:是胶囊的高度 首页配置文件

    2024年02月15日
    浏览(40)
  • 一码多端,一个二维码适用微信小程序,支付宝小程序,h5页面

    最近公司研发自己的一个小程序,因为是线下树牌,涉及到扫码这个问题,但是扫码又分三个端,浏览器扫码,微信扫一扫,支付宝扫码,做这个需求也是遇到了很多坑,在此记录一下 1.扫码进入微信小程序 首先登录微信公众平台,链接 https://mp.weixin.qq.com/  原本此处会有一

    2024年02月08日
    浏览(73)
  • uni-app跨端开发H5、微信小程序、支付宝小程序遇到的坑

    1.checkbox样式

    2024年02月11日
    浏览(61)
  • 微信小程序:单行输入和多行输入组件

    微信小程序提供了两种输入类型的输入框组件,分别是单行输入框 input 和多行输入框 textarea 。 1. 单行输入组件(input) 单行输入框 input input 是一个用于收集用户输入的组件,主要用于收集单行文本输入。 input组件用于录入单行文本,尽管input的基本功能是文本录入,但该组

    2024年02月06日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包