微信小程序剛推出不久,看好和研究的人很多,問題也不少,微信小程序點擊事件重復觸發(fā)的問題估計大家經(jīng)常遇到,那么如何解決呢?主要有以下兩種情況:
一、子內(nèi)容塊和父內(nèi)容塊都設置了點擊事件,當子內(nèi)容塊除非點擊事件時,父內(nèi)容塊也會觸發(fā)點擊事件。如下圖所示

這種情況比較好解決,只要區(qū)分好冒泡事件和非冒泡事件就行,微信也有想關的事件區(qū)分,只要父內(nèi)容塊用bindtap,子內(nèi)容塊用catchtap就行。如下圖:
二、長按和點擊事件重復,觸發(fā)長按事件的時候會觸發(fā)點擊事件。看如下事件詳細過程。
單擊 touchstart → touchend → tap
長按 touchstart → longtap → touchend → tap
所以長按的時候必然會觸發(fā)點擊事件,那么如何解決呢?方維網(wǎng)絡的解決辦法是通過偵聽touchstart和 touchend事件執(zhí)行的時間差,如果時間差大于350毫秒則為長按事件,不執(zhí)行點擊。這個可在點擊事件里進行判斷。如下圖

如沒特殊注明,文章均為方維網(wǎng)絡原創(chuàng),轉(zhuǎn)載請注明來自http://m.kuctown.com/news/3551.html