vue使用vant中的popup层,在popup层中加搜索功能后,input框获取焦点 ios机型的软键盘不会将popup顶起来的问题

这篇具有很好参考价值的文章主要介绍了vue使用vant中的popup层,在popup层中加搜索功能后,input框获取焦点 ios机型的软键盘不会将popup顶起来的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.使用vant的popup弹出层做了一个piker的选择器,用户需要在此基础上增加筛选功能。也就是输入框
vue使用vant中的popup层,在popup层中加搜索功能后,input框获取焦点 ios机型的软键盘不会将popup顶起来的问题,vue.js,ios,前端
2.可是在ios机型中,input框在获取焦点以后,ios的软键盘弹起会遮盖住我们的popup层,导致体验不是很好
3.在大佬的解答及帮助下,采用窗口滚动的方式解决此方法

<Popup
          v-model="personalClassificationPoup"
          position="bottom"
          class="per_class_scroll_view"
          round
          get-container="#AppMainContainer"
          safe-area-inset-bottom
          @closed="personalClassificationPoupClosed"
        >
          <Picker
            class="warpPiker"
            show-toolbar
            title="请选择"
            :columns="personalClassificationColumns"
            :defaultIndex="personalClassificationColumnsIndex"
            value-key="TypeName"
            @confirm="(value) => onPersonalPoupConfirm(value)"
            @cancel="() => (personalClassificationPoup = false)"
          >
            <template #title>
              <input 
                v-model="personalClassificationKey"
                type="text"
                @focus="getFocus"
                @input="personalClassificationUpdate" 
                placeholder="请输入搜索内容" 
                class="van-field__control" 
                style="flex:1;text-align:center">
            </template>
          </Picker>
        </Popup>

4.在获取焦点时 将整个窗口的滚动高度赋值为 popup层的高度文章来源地址https://www.toymoban.com/news/detail-672744.html

getFocus(){
    let events = navigator.userAgent;
    // iphone手机 软键盘第一次顶不起来
    if(events.indexOf('iPhone')>-1){
      this.$nextTick(() => {
        let documents:any = document
        if(documents == undefined || documents == null){
          return
        }
        if(documents.activeElement.tagName === 'INPUT' || documents.activeElement.tagName === 'TEXTAREA'){
            window.setTimeout(function () {
            documents.scrollingElement.scrollTop = documents.querySelector('.per_class_scroll_view').scrollHeight;
          }, 200);
        }
      });
    }
  }

到了这里,关于vue使用vant中的popup层,在popup层中加搜索功能后,input框获取焦点 ios机型的软键盘不会将popup顶起来的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 微信小程序——使用 Vant 组件实现 Popup 弹出层(各位置弹出详细代码分享)

    ✅作者简介:2022年 博客新星 第八 。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏:微信小程序学习分享 ✨特色专栏:国学周更-心性养成之路 🥭本文内容:微信小程序——使

    2024年02月08日
    浏览(67)
  • 【项目复盘Vue2-移动端】IOS使用Vant表单组件输入框获取焦点后放大页面,安卓软键盘遮挡问题

    使用Vue+Vant做的移动端项目,在登录界面使用Vant的表单组件van-input时发现在真机测试IOS会出现获取焦点输入时会撑大原页面的宽度,每一个输入框获取到焦点就会页面就会放大一点点,需要双指缩放才能回到原来的比例。 经过一番百度后发现: 在移动端开发项目中,发现页

    2024年02月12日
    浏览(69)
  • vue element-ui blur触发事件 vue中使用@blur获取input val值 elementui+vue

    vue中使用@blur获取input val值

    2024年02月11日
    浏览(50)
  • vue - vue使用腾讯api进行定位获取,绘制地图、标点、搜索、路线规划

    首本文主要记录一下在Vue项目里面使用腾讯地图api实现的一些功能。如:引入腾讯地图SDK、定位获取当前经纬度和详细地址、地图marker的使用、搜索功能和路线规划。 我这边实现的效果图如下: 首先要成为腾讯位置服务开发者或者使用公司提供的 key 值;才可以使用腾

    2023年04月17日
    浏览(54)
  • vue写法——使用js高阶函数实现多条件搜索功能

    🙂博主:小猫娃来啦 🙂本文核心: vue封装——使用js高阶函数实现多条件搜索功能 之前出过一个react写法的前端搜索(react写法——使用js高阶函数实现多条件搜索功能) 今天我们再研究一下vue中怎么实现。 react和vue有什么区别? 这个区别要细说可太多了,但是最终都能归

    2024年02月11日
    浏览(54)
  • element-ui表单input输入框获取自动聚焦功能

    1.问题描述 当用户点击新增按钮时,弹出新增页面,需要form表单中的input框自动获取焦点 2.解决的方法 第一步:给form表单的input输入框添加ref属性 第二步:定义一个方法 我是使用vue开发前端页面的,所以在methods中定义一个方法,在方法中写input输入框自动聚焦的功能 第三步

    2024年02月14日
    浏览(44)
  • 前端实现 input 回车搜索(html,vue,react实现)

    搜索框是个常见的功能,除了 用ui库,有的时候必须要自己封装(因为改ui库太麻烦了,定制化要求很高),所以 涉及到 点击按钮搜索和回车搜索都要实现。下面就是实现的一些方法。 html里: 方式一:html里可以用 form 来实现,因为form里回车也能触发提交事件。思路就是

    2024年02月11日
    浏览(48)
  • vant组件van-swipe-cell中的滑动删除功能(数据的删除功能)

    我们通过查看vant4官网发现上面并没有写如何删除,只有删除的按钮 我写的是这样的: wxml: 我这里数据是存在batchStore.informList中 重要的是: 要绑定一个id,是要删除的那条数据的唯一标识 js: 我这里数据是存在batchStore.informList中 先获取要删除那条数据的id

    2024年02月09日
    浏览(51)
  • 前端实现输入框实时搜索,【vue+el-input】

    一般搜索都是调后端的接口,绑searchValue字段(也有可能叫其他的字段名),通过后端的接口进行实时搜索 如果由前端自己实现搜索过滤的话也简单 1、input事件 2、绑数据源的时候,根据条件判断用过滤数组还是原数组 3、data中定义数据 4、先获取原数组的数据 5、输入框in

    2024年02月09日
    浏览(49)
  • vue input获取光标位置,并追加内容

    项目中需要实现在输入框内的任意位置,追加内容,这里通过input的selectionStart属性还有setSelectionRange方法来实现。 首先来看selectionStart属性,用于获取文本框选区的开始位置,selectionEnd用于获取文本框选区结束的位置,举个栗子: 在该功能中,我们不是选择文字,主要是需要

    2024年02月16日
    浏览(36)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包