我們用angular開發(fā)了一個微信公眾號網(wǎng)頁程序,完美持續(xù)運營3年,今年4月份突然發(fā)現(xiàn)在首頁上拉加載數(shù)據(jù)的時候無法上拉。
突然出現(xiàn)的這個問題把我們都整懵了,為啥突然就不能上拉了?
剛開始查詢微信瀏覽器是不是更新什么東西了,結(jié)果查了半天也沒發(fā)現(xiàn)什么有用的文章。
百度的時候倒是查到了一點有用的信息,但是我們用的都是angular的組件ng-zorro-antd-mobile,內(nèi)部已經(jīng)實現(xiàn)了兼容,所以又不行
失敗!
關(guān)鍵是手機(jī)的微信瀏覽器不能debug,這就很費勁了。
查看組件的源碼,但是發(fā)現(xiàn)源碼寫的都沒有問題-.-!
最后只能alert出srollTop參數(shù),發(fā)現(xiàn)為啥它的精度怎么這么大,小數(shù)點后好幾位!然后又發(fā)現(xiàn)這個組件在判斷是否到達(dá)底部的地方用的是“===”!
叮!發(fā)現(xiàn)問題!喜大普奔~
最后把“===”改成了“>=”,并且把scrollTop向上取整!問題終于得到解決
結(jié)論:微信瀏覽器的獲取滾動距離的關(guān)鍵參數(shù)scrollTop不是整數(shù)!判斷的時候要謹(jǐn)慎
最后的最后希望這篇文章能給你帶來啟發(fā),創(chuàng)造更出色的代碼!