IOS在Input失焦后,发现body的页面会中止不下来,而且页面上的输入框,按钮点击事件,所有都移位了,须要滑动一下才能够正常。spa
下面是解决方法,可全局引用:
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', () => { //软键盘关闭事件 flag = false; if (!flag) { myFunction = setTimeout(function () { window.scrollTo({ top: 0, left: 0, behavior: "smooth" })//重点 =======当键盘收起的时候让页面回到原始位置(这里的top能够根据大家我的的需求改变,并不必定要回到页面顶部) }, 200); } else { return } }) } else { return }