遇到的問題
在完成一個(gè)奶茶點(diǎn)餐微信小程序的時(shí)候,想實(shí)現(xiàn)點(diǎn)擊左側(cè)分類菜單欄,右側(cè)菜單滾動(dòng)到相應(yīng)位置時(shí),出現(xiàn)了rpx適配不精準(zhǔn)的問題。只在屏寬375px的機(jī)型中測(cè)試時(shí)可以實(shí)現(xiàn)滾動(dòng)到精確的位置,其他屏寬的機(jī)型會(huì)出現(xiàn)不精準(zhǔn)的情況。使用的是srcoll-view做右側(cè)菜單外包,改變scrollTop值來實(shí)現(xiàn)滾動(dòng)到相應(yīng)位置的效果。目前問題已解決。
滾動(dòng)不精準(zhǔn)的情況

問題解決后的效果圖

問題解決后的相應(yīng)js代碼

解決思路
首先實(shí)現(xiàn)rpx轉(zhuǎn)px,實(shí)現(xiàn)代碼如下
(注:proportion即為rpx/px的值,在屏寬375px的情況下,該值為2)

解決rpx適配不精準(zhǔn)問題
在適配時(shí),proportion的值往往取整數(shù),而我們計(jì)算時(shí)一般會(huì)直接使用rpx/proportion的值,這個(gè)值通常都會(huì)有小數(shù)部分,故會(huì)出現(xiàn)滾動(dòng)不精準(zhǔn)的問題。
因此我們?cè)谟?jì)算時(shí)也需把每個(gè)元素高的轉(zhuǎn)換值取整數(shù),且應(yīng)該是向下取整。再累加作為scrollTop的值。
