在苹果更新ios16.2后,很多用户反馈 picker选择不到对应的选项,经查找,发现是和执行的一段动画代码有关,可以修改 mui.picker.all.js 把这段css动画的代码去掉
修改前的mui.picker.all.js 代码
if (isIos) {
self.list.style.webkitTransformOrigin = "center center " + self.r + "px";
}
修改后的mui.picker.all.js 代码 根据评论区的提示 又加了判断
if (isIos) {
if (mui.os.ios && mui.os.plus && plus.os.version >= "16.2") {
return;
}
var maches = userAgent.match(/iphone os ([\d_]+) /i);
if (maches && maches.length >= 2 && maches[1] >= "16_2"){
return;
}
self.list.style.webkitTransformOrigin = "center center " + self.r + "px";
}
mui.picker.all.js 修改后 使用 uglifyjs 压缩为 mui.picker.min.js 然后在项目中使用可以解决
1.安装 uglifyjs
npm install uglify-js -g
2.压缩修改后的 mui.picker,all.js
uglifyjs mui.picker.all.js -m -c -o mui.picker.min.js
附件为修改后的 mui.picker.all.js 和 mui.picker.min.js