美文网首页
ios 移动端手机小键盘导致页面内容留白不下滑

ios 移动端手机小键盘导致页面内容留白不下滑

作者: Maxine708 | 来源:发表于2019-09-20 21:07 被阅读0次

    H5 开发,页面输入 input 表单内容提交。
    ios 移动端手机小键盘导致页面内容留白不下滑。以及弹窗定位会失效。
    解决办法,增加blur动作监控,用js操控页面恢复页面位置。
    目前的解决办法是给输入框(或select选择框)添加失去焦点的事件,当输入框失去焦点,页面自动滚动到顶部,并且需要加定时器,否则偶尔会失效,具体代码如下:

    /**
     * 处理iOS 微信客户端6.7.4 键盘收起页面未下移bug
     */
    ;(/iphone|ipod|ipad/i.test(navigator.appVersion)) && document.addEventListener('blur', (e) => {
        // 这里加了个类型判断,因为a等元素也会触发blur事件
        ['input', 'textarea'].includes(e.target.localName) && document.body.scrollIntoView(false)
    }, true)
    

    解决ios底部弹窗,键盘收起后按钮无法点击bug

     // $("#signUpBtn").css("background", "#a2a1a8");
                // $("#signUpBtn").attr("disabled", "true"); //设置变灰按钮  
                // $("#signUpName").attr("value","1111")
                // $("#signUpName").prop('disabled','disabled');
    
    const ua = typeof window === 'object' ? window.navigator.userAgent : '';
    let _isIOS = -1;
    let _isAndroid = -1;
    export function isIOS() {
        if (_isIOS === -1) {
            _isIOS = /iPhone|iPod|iPad/i.test(ua) ? 1 : 0;
        }
        return _isIOS === 1;
    }
    if (isIOS()) {
        $(".getCode").bind("click", function () {
            window.scrollTo(0, 0)
        })
        window.addEventListener('focusin', () => {
            let scrollHeightOne = document.body.scrollTop;
            // alert(scrollHeightOne)
            // 键盘弹出事件处理
            //   alert("iphone 键盘弹出事件处理")
        });
        // window.addEventListener('focusout', () => {
        //   window.scrollTo(0,0)
        // });
    }
    

    然而依然处理地不够彻底,又换了一种。

    /**
     * 处理iOS 微信客户端6.7.4 键盘收起页面未下移bug
     */
    ; (/iphone|ipod|ipad/i.test(navigator.appVersion)) && document.addEventListener('blur', (e) => {
        // 这里加了个类型判断,因为a等元素也会触发blur事件
        ['input', 'textarea'].includes(e.target.localName) && document.body.scrollIntoView(false)
    }, true)
    

    相关文章

      网友评论

          本文标题:ios 移动端手机小键盘导致页面内容留白不下滑

          本文链接:https://www.haomeiwen.com/subject/mdzeyctx.html