微信小程序開發之IOS/Android兼容坑(持續更新)


 

一、時間轉換問題:

這不只是小程序上面的問題是ios系統 都有這個問題
就是new  Date("2017-06-16") 在IOS會出現NAN的情況所以對於時間轉換需要另行封裝,解決方案如下

1.替換”-“為”/“

2.刪除”.“后面的字符串(帶毫秒也會有問題)

代碼如下:

 /**
     * 字符串轉換為時間
     * @param  {String} src 字符串
     */
    strToDate(dateObj){
      dateObj = dateObj.replace(/T/g, ' ').replace(/\.[\d]{3}Z/, '').replace(/(-)/g, '/')
      dateObj = dateObj.slice(0, dateObj.indexOf("."))
     return new Date(dateObj)
    }

 

二、fixed定位問題

整個頁面的fixed定位,在ios下下拉會觸發下拉事件,但是沒有動畫效果。Android就能正常運行

flex中使用 絕對定位,ios出現嚴重錯位,導致父級元素也會變成絕對定位,Android能達到理想效果

總而言之 盡量不用fixed

三、absolute定位問題

1.使用absolute定位,並且寬帶設置了100% 並且設置了padding就會導致屏幕寬度溢出,出現頁面左右可以移動的bug,模擬器上是沒有問題,但是真機上是有這個問題的。這個問題讓我調試並痛苦了許久

2.使用absolute並且當前元素是flex容器這種情況在Ios下面布局不會起到左右,會出現所有元素轉換成了absloute並且文字錯位

3.總而言之 盡量不用 absolute

、 word-spacing在button中的問題

有時候在使用大按鈕的時候兩個字中間希望有段間距,但是目前沒有找到能使用的占位符,所以使用了的word-spacing加空格 這個方法來設置文字的間距,但是在iPhone6s 上兩個字中間一個空格的時候整體會向右偏,必須設置兩個空格才正常!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM