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 }