先说结论:苹果版(含APP-PLUS/微信小程序)的<scroll-view/>无法被position:fixed|absolute等等定位效果穿透.
UI框架使用的是 u-view.
如同所示,由于未知的力量,<u-popup/>弹框被<u-tabs>给【截断】了,正常应该显示为最下方那张图那样.
第一次怀疑的方向:<u-tabs/>组件使用的是<scroll-view/>实现的左右滑动效果,因此怀疑是<scroll-view/>层级太高,所以遮挡了<u-popup/>.
在使用<view/>替换<scroll-view/>重写<u-tabs/>发现问题仍未解决.
第二次怀疑方向:<u-popup/>也是写在一个<scroll-view/>,可能是苹果的<scroll-view/>带有类似于overflow:hidden的效果.
通过uni.getSystemInfoSync().system.match(/iOS/g)来判断当前页面运行的手机系统环境是否为IOS.
如果是IOS环境,则将包裹<u-popup/>的<scroll-view/>替换为<view/>,bug成功解决.
完