[前端][fmui] IOS兼容问题总结

1、ios 设备不支持部分时间格式

​ 解决方案:

​ ios 下 new Date('2020-03-11 00:00:00') 不生效,需要对日期进行 date.replace(/-/g, '/') 处理。

​ ios环境下,new Date('2021/12')是非法的,需要改为new Date('2021/12/1')

2、ios position:fixed层级异常

  • ios里定位的层级取决于父元素的层级,不管是absolute还是fixed,而安卓里fixed层级是独立计算的。

    解决方案:

    给父元素也加定位并设置较大的z-index值。 (最好是一开始就把所有fixed定位元素放在同级dom下。)

  • 遇到-webkit-overflow-scrolling: touch; 时出现样式冲突

    解决方案:

    方案1:使用transform: translateZ替代z-index;

    方案2:将touch改为 -webkit-overflow-scrolling: auto;

3、ios input无法左右滑动

​ 解决方案:ios input无法直接左右滑动,但是textarea可以滑动,使用textarea模拟input实现ios的左右滑动示例知识库open in new window

4、ios16.2 版本以上使用mui的picker选择器显示异常

​ 解决方案:[前端][fmui]ios16.0版本以上mui的picker选择器显示异常 | 移动前端常见问题库open in new window

5、ios 不支持正则表达式零宽断言(?=、?<=、?!、?<!)

​ 解决方案:[前端][fmui]ios端使用断言语句阻塞程序执行,导致页面空白open in new window

6、ios安全区域适配问题

​ 在 iphone X 之后引入了一个新概念:“safe area(安全区域)”,安全区域指屏幕内不受圆角、齐刘海、底部小黑条等元素影响的可视窗口

​ 解决方案:[前端][fmui]ios安全区域适配问题 | 移动前端常见问题库open in new window

7、ios环境返回上一页不刷新

​ 解决方案:[前端][fmui] 返回页面数据不刷新的处理方案 | 移动前端常见问题库open in new window

8、ios部分机型 软键盘收起页面不回滚导致页面出现空白

​ 解决方案:

$('body').on('blur', 'input,textarea', function () {
	window.scrollTo(0, 0);
});

9、部分ios ejs.page.open无法朓转页面

​ 解决方案:低版本需要使用全路径url朓转

最后更新时间::
贡献者: wyanqd