ios键盘收起页面空白问题

在iOS开发中,遇到输入框较多的页面,当用户点击后面几个input并弹出键盘后,键盘收起时页面不会自动回弹,造成底部出现空白区域,影响用户体验。为解决这个问题,一种简单的解决方案是在input失去焦点时,通过代码实现页面的滚动,确保内容完全可见。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开发网页的时候遇到一个非常恶心的问题,ios中,一个页面有一系列input需要填写,假设有10个,点击后面几个,弹出键盘,一般会超出页面长度的。这个时候,如果收起键盘,页面不会回弹导致底部出现空白部分,这个时候,点击页面上的一些按钮会点击不中。

我这里的一个非常蠢的办法,就是判断当input失去焦点的时候,主动滚动

let u = window.navigator.userAgent;
    let res = {
        mobile: !!u.match(/AppleWebKit.*Mobile.*/),
        ios: !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/),
        android: u.indexOf("Android") > -1 || u.indexOf("Linux") > -1,
        iPhone: u.indexOf("iPhone") > -1,
        iPad: u.indexOf("iPad") > -1
    };
if (res.iPhone || res.iPad) {
        $('body').on('touchend', function (el) {
            if (el.target.tagName != 'INPUT') {
                $('input').blur(function () {
                    document.body.scrollTop = document.body.scrollHeight;
                })
            }
        })
    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值