https://github.com/tomfriwel/weapp-qrcode
qrcode = new QRCode('canvas_' + i, {
text: qrCode,
colorDark: "#000000",
colorLight: "#FFFFFF",
correctLevel: QRCode.CorrectLevel.H,
width: 300 / 750 * wx.getSystemInfoSync().screenWidth,
height: 300 / 750 * wx.getSystemInfoSync().screenWidth,
});
原因:
這裏,你的顏色將會直接設置成strokeStyle
這個顏色是和html的canvas一樣的
但是,瀏覽器內核對這個顏色的支持並不統一
唯一確定支持的顏色,是標準的# + 6位16進制數
我理解,可能vivo手機的瀏覽器內核是opera的
導致3位數字不能被支持
而且,有可能出現White!=white
這種,預定義名稱的兼容性問題
全部化爲標準的16進制6位寫法
IE下,# + 8位16進制數的帶透明度顏色,是不支持的 必須寫成rgba(*,*,*,*)
有文章說過vivo的手機比較怪異,內核一些組件,默認瀏覽器內核,和大多數系統有點不同
如果內核真的是UC或者opera這種小衆內核,也許真的會有類似問題