vue項目引入FastClick組件解決IOS系統下h5頁面中的按鈕點擊延遲,連續點擊無反應的問題


異常描述:

  ios系統手機中訪問h5頁面,按鈕點擊有延遲,連續點擊卡頓、無反應。

異常原因:

  這要追溯至 2007 年初。蘋果公司在發布首款 iPhone 前夕,遇到一個問題:當時的網站都是為大屏幕設備所設計的。於是蘋果的工程師們做了一些約定,應對 iPhone 這種小屏幕瀏覽桌面端站點的問題。這當中最出名的,當屬雙擊縮放(double tap to zoom),這也是會有上述 300 毫秒延遲的主要原因。雙擊縮放,顧名思義,即用手指在屏幕上快速點擊兩次,iOS 自帶的 Safari 瀏覽器會將網頁縮放至原始比例。

解決方法:

簡單粗暴型——禁用頁面縮放,設置 user-scalable=no。經驗證,這種方法不兼容ios低版本手機,如iphone4/5等。

<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1,user-scalable=no">

第三方插件——FastClick,完美兼容主流版本ios系統手機。

html頁面中直接使用:

<script src="https://cdn.bootcss.com/fastclick/1.0.6/fastclick.js"></script>
<script>
window.onload=function(){
  FastClick.attach(document.body)
}
</script>

vue項目中使用:

#安裝fastclick組件
npm install fastclick --save-dev
#引入FastClick
import FastClick from 'fastclick'
 
//在created或monted生命周期中將FastClick綁定到body
FastClick.attach(document.body)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM