娜娜佳
娜娜佳
  • 发布:2019-06-17 11:32
  • 更新:2024-06-27 17:03
  • 阅读:4543

关于解决在安卓(华为,荣耀)等部分机型上的显示白屏或错乱的问题

分类:HTML5+

【现象】
在页面切换时,随机性出现显示白屏或者错乱。js代码能够正常运行,控制台能正常输出。

【代码写法】
使用rem作为单位,并且使用类似以下代码来实现在不同机型上的大小问题。

document.documentElement.style.fontSize = document.documentElement.clientWidth / 7.5 + 'px'

【原因】
显示白屏或错乱的原因,是因为上面这段代码计算出来的fontSize可能为0,导致元素无法正常显示。这个在其他浏览器上是从未出现过的,建议官方修复。

【解决办法】
在官方没有修复之前,可以使用以下代码替换上述代码来解决。

(function setFontSize() {  
    document.documentElement.style.fontSize = document.documentElement.clientWidth / 7.5 + 'px'  
    if(document.documentElement.clientWidth === 0) {  
      setTimeout(setFontSize, 100)  
    }  
  })()
1 关注 分享
1***@qq.com

要回复文章请先登录注册

1***@qq.com

1***@qq.com

我也遇到了这个问题,打包的apk在安卓其他手机上都能正常打开,在华为的一些型号上打开就白屏,按照你这个修改了后就正常显示了,非常感谢!!!
2024-06-27 17:03
1***@qq.com

1***@qq.com

华为MateBook可以用hbuider吗?
2019-11-27 19:23