zoukankan      html  css  js  c++  java
  • css,js加载阻塞页面渲染的理解

    页面要等所有的css加载解析完毕后才会渲染,

    css 的加载会阻塞后面dom的解析,

    js的加载和执行后阻塞后面dom的解析

    defer 的script 的下载不会阻塞dom的解析,defer的script下载完毕后会按顺序执行,且在DOMContentLoad 触发前执行,当所有的defer下载完毕后,再按顺序执行。ie10及以下可能不会按顺序执行

    async 的sciprt 的下载不会阻塞dom的解析,async的scipt下载完毕后不一定会按顺序执行,且执行时间在domContentLoad触发前后都有可能 。在合适的时间执行 ie10及支持

    require js 就是使用的 async动态添加的脚本

    require js 遵循 amd 即异步的模块定义,所有的模块都是异步加载的,使用前必须将所有的模块提前加载

    seajs 遵循的是cmd 即通用的模块定义,模块可以预先加载,也可以异步加载,也在需要的时候同步加载。

    综合上面的一些,对于页面首屏展示的优化建议是

    首屏的css最好直接放在style内,然后js放在页面底部,或者使用ansy或defer

  • 相关阅读:
    关于java异常处理的自我学习
    html学习
    java第七周动手动脑
    作业
    动手动脑
    我要建立自己的java代码仓库
    第三周作业
    day0319 模块
    day0318装饰器和内置函数
    day0315 迭代器
  • 原文地址:https://www.cnblogs.com/chillaxyw/p/9494258.html
Copyright © 2011-2022 走看看