fastclick 源碼注解及一些基礎(chǔ)知識(shí)點(diǎn)

在移動(dòng)端,網(wǎng)頁(yè)上的點(diǎn)擊穿透問(wèn)題導(dǎo)致了非常糟糕的用戶體驗(yàn)。那么該如何解決這個(gè)問(wèn)題呢?

問(wèn)題產(chǎn)生的原因

移動(dòng)端瀏覽器的點(diǎn)擊事件存在300ms的延遲執(zhí)行,這個(gè)延遲是由于移動(dòng)端需要通過(guò)在這個(gè)時(shí)間段用戶是否兩次觸摸屏幕而觸發(fā)放大屏幕的功能。那么由于click事件將延遲300ms的存在,開(kāi)發(fā)者在頁(yè)面上做一些交互的時(shí)候往往會(huì)導(dǎo)致點(diǎn)擊穿透問(wèn)題(可以能是層之間的,也可以是頁(yè)面之間的)。

解決問(wèn)題

之前遇到這個(gè)問(wèn)題的時(shí)候,有在網(wǎng)上看了一些關(guān)于解決移動(dòng)端點(diǎn)擊穿透的問(wèn)題,也跟著網(wǎng)上提出的方式進(jìn)行了各項(xiàng)測(cè)試,最終還是覺(jué)得使用fastclick插件比較靠譜些,其他幾種方法多多少少會(huì)存在一些其他問(wèn)題(當(dāng)然,fastclick也不是說(shuō)完全兼容各項(xiàng),但相對(duì)于其他一些方法不會(huì)造成較明顯的問(wèn)題)

使用方式:

<!-- 引入文件 --> <script src="fastclick.js"></script>

js:

網(wǎng)友評(píng)論