可以確認下頁面是否引用了FastClick插件,這是專門解決移動端瀏覽器300ms點擊延遲和點擊穿透問題所開發(fā)的一個輕量級的庫,但是ios11 后修復了移動點擊300ms延遲,所以引用FastClick插件在ios11.3以上的版本可能存在沖突,從而出現(xiàn)拉起軟鍵盤滯后的問題
解決方案:
-
在fastclick源碼中改造,在node_module里找到fastClick文件,然后找到focus方法,強制focus
image.png 在本身代碼的FastClick加載時增加版本判斷。找到FastClick.attach(document.body)的地方,增加判斷,iOS11以上的版本不加載
const str= navigator.userAgent.toLowerCase()
const ver=str.match(/cpu iphone os (.*?) like mac os/)
if(!ver || (ver && parseInt(ver[1])< 11)){ // 非IOS系統(tǒng) 或者ios<11的版本加載
// 引入fastclick 做相關處理
FastClick.attach(document.body)
}
