页面出现长时间的白屏要怎样排查问题?

从网络方面检测

  1. 先确保网络连接顺畅
  2. 再检查 URL 地址是否错误
  3. 打开 控制台 查看是否有报错信息
  4. 查看接口访问 是否有请求
  5. 查看 路由 是否有 path错误 ,导致加载了不存在的页面

从js和css方面检测

排除了 网络问题 以后,如果还是白屏,那一般都是 css和js 加载造成的;css和js 会造成阻塞渲染。比如不正确的引入css和js , 就会导致它们的加载速度过长,从而导致白屏现象。
正确的引入方式是:

  1. <head> 标签中引入css:因为在加载HTML 前不先渲染css 的话,整个页面会乱掉;
  2. </body> 标签之前、body 标签中html 内容的后面 ,引入 js:因为浏览器加载script 标签时,处理内部代码的顺序都是从上到下 依次执行的,如果在 html 内容前就引入js 的话,那么就会导致,在所有的代码处理完毕之前,会阻塞其他资源的加载;会导致页面的其他内容都无法显示,因此如果不规范引入js的话,会对页面的其他内容带来影响。

补充说明:
script 标签里可以添加async或defer 属性,如果不添加 这个属性,浏览器就会立即加载并执行脚本;也就是在渲染script 标签之前,不等后续的文档加载前执行;他们的区别在于:

  1. async:加载和渲染后续文档元素的过程将和 script.js的加载与执行并行进步(异步)
  2. defer: 加载后续文档元素的过程中和script.js的加载与执行并行进步(异步)。但是script.js的执行要在所有元素解析完成之后,DOMContentLoaded 事件触发之前完成。

deferasync网络读取(下载) 方面是一样的,都是异步的 ;区别在于脚本下载完成之后什么时候开始执行。

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值