IOS键盘打开和关闭问题

1.收起键盘时,页面不会回到原来的位置

function inputBug() {
       var u = navigator.userAgent;
       var flag;
       var myFunction;
       var isIOS = !!u.match(/(i[^;]+;( U;)? CPU.+Mac OS X/);
        if (isIOS) {
            document.body.addEventListener('focusin', () => {  //软键盘弹起事件
                flag = true;
                clearTimeout(myFunction);
            })
            document.body.addEventListener('focusout', (e) => { //软键盘关闭事件
                flag = false;
                if (!flag) {
                    myFunction = setTimeout(function () {
                        window.scrollTo({ top: 0, left: 0, behavior: "smooth" })//当键盘收起的时候让页面回到原始位置(这里的top可以根据你们个人的需求改变,并不一定要回到页面顶部)
                    }, 200);
                } else {
                    return
                }
            })
        } else {
            return
        }
}

2.ios打开和关闭键盘使用focus和blur没有效果。

3.ios键盘打开的时候,焦点元素会自动滚动到可视区域。而安卓不会,需要通过js控制

4.ios键盘弹起时,fixed定位会变成absolute

5.input中line-height会影响光标的大小和位置

原文地址:https://www.cnblogs.com/zsj-02-14/p/13525512.html