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会影响光标的大小和位置