本文作為一名新手,寫(xiě)的不好地方還請(qǐng)各位大家多多指教,以下內(nèi)容只是給大家共勉以下我的解決方案,也是我個(gè)人的一個(gè)見(jiàn)解,有不同意見(jiàn)不同解決方案的朋友還請(qǐng)多多分享自己的解決辦法。
首先,我們使用fastclick插件的初衷是解決“tap”事件“點(diǎn)透”的BUG;fastclick與tap都是利用“touch”事件來(lái)模擬“click”事件的;
然后我們來(lái)大致的了解一下fastclick的工作原理(來(lái)自往上的copy):
在我們的app中跟蹤所有的TouchStart事件,在接收到touchend事件的時(shí)候,觸發(fā)一個(gè)click事 件;
使用方法可找度娘;
但是問(wèn)題來(lái)了,當(dāng)使用了fastclick的時(shí)候,我們發(fā)現(xiàn)“日期”控件無(wú)法被觸發(fā)了,是正常的點(diǎn)擊時(shí)無(wú)法被觸發(fā),如果長(zhǎng)按0.5S的樣子還是可以觸發(fā)的,但是問(wèn)題還是已經(jīng)存在,必須解決!
通過(guò)閱讀fastclick的源碼發(fā)現(xiàn)里面有個(gè)這個(gè)方法

反正意思在上面也提到過(guò),就是在接受到touchend事件的時(shí)候,觸發(fā)一個(gè)click事件;
那么我的解決防范就是:
當(dāng)touchend的時(shí)候我們判斷一下他的event.target到底是啥,如果是date我們就不玩了,不要你fastclick了,用原生的去觸發(fā)不就OK了,來(lái)個(gè)return false;
我的代碼:

這里if里面的條件就隨便寫(xiě)咯,自己根據(jù)項(xiàng)目需求而定,反正你要的是到達(dá)某個(gè)特殊的條件時(shí)給他退出就好了;
本文作為一名新手,寫(xiě)的不好地方還請(qǐng)各位大家多多指教,以下內(nèi)容只是給大家共勉以下我的解決方案,也是我個(gè)人的一個(gè)見(jiàn)解,有不同意見(jiàn)不同解決方案的朋友還請(qǐng)多多分享自己的解決辦法。謝謝大家能夠關(guān)注本篇文章,有你們的支持我會(huì)做的更好。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注