天天看点

微信小程序ios系统下viedo视频全屏无法遮挡fixed事件的解决办法

之前博主遇到过一个巨巨巨大的坑,困扰了我很久都没有找到原因,其实现在我也没有找到具体的原因,如果有同学知道的话可以给我留言哦,先po一下具体遇到的bug

当进入全屏的时候,底部fixed固定的tab栏会遮挡视频,返回之后会出现两个tab栏

微信小程序ios系统下viedo视频全屏无法遮挡fixed事件的解决办法
微信小程序ios系统下viedo视频全屏无法遮挡fixed事件的解决办法

解决方案,给tab栏设置一个属性,当进入全屏事件的时候tab栏的display设置为none,当退出的时候tab栏的display为block

微信小程序ios系统下viedo视频全屏无法遮挡fixed事件的解决办法

给video绑定一个bindfullscreenchange事件

微信小程序ios系统下viedo视频全屏无法遮挡fixed事件的解决办法
bindfullscreenchange:function(e){
      console.error(e);
      let fullScreen = e.detail.fullScreen //值true为进入全屏,false为退出全屏
                  if (!fullScreen ) { //退出全屏
                      console.log('退出全屏')
                      this.setData({
                        ischeck :true
                      })
                    
                  } else { //进入全屏
                      console.log('进入全屏')
                      this.setData({
                        ischeck :false
                      },()=>{
                        console.log(this.data.ischeck)
                      })
                  }
          
    },
           

就可以实现兼容安卓和ios的问题,当然至今不知道是因为什么原因,如果有知道的宝贝欢迎留言