• xhr 加载顺序


    我 发现在xhr中如果加载的内容 是html,并包含有js  与css这两种外部链接,这里的js是算做xhr加载 文件 的jquery的load会在js这些外部的文件加载完成之后退出,但是不会等css文件。这是我在查看分析了google chrome develper 的加载时间之后发现的问题。

    在加载中js的执行是按顺序执行的,如果遇到外部文件 也会先执行外部文件里的再回到原文件。

    关于html的加载:

      总体上,html的是按从上到下的顺序边加载边解析,边生成dom对象,至于在html中夹杂的:

      document.write("xxxx");

      <script type="text/javascript" src="aaa.js"></script>

      之类的东西,它们的顺序是怎样的呢?还是一样,如果在解析html时,遇到这些东西就会停止解析,转而执行这些生成语句,如果中间插入外部链接,就转而解析、执行外部链接对应的js。对于以下语句对于不同浏览器存在不同的结果:

      <script type="text/javascript" src="aaa.js"></script>

      在ie中。不会等待aaa.js下载并解析完的,会创建另一线程搞定它,而主线程则越过去。但在ff中。则会等待,直到aaa.js下载、解析、执行完毕。解决这个问题,可以利用HTML解析是解析完一个HTML标签,再执行下一个的原理,把代码拆分来实现。

    document.write()会把输出写入到脚本文档所在的位置,浏览器解析完documemt.write()所在文档内容后,继续解析document.write()输出的内容,然后在继续解析HTML文档。

  • 相关阅读:
    failed to push some refs to 'git@github.com:cq1415583094/MyBatis.git'解决办法
    MyBatis 安装和配置
    MyBatis入门
    LinkedList 源码分析
    ArrayList 源码分析
    什么是注解?
    什么是泛型?
    什么是反射?
    php针对各数据库系统对应的扩展
    DedeCMS文章标题长度最全修改方法
  • 原文地址:https://www.cnblogs.com/fengidri/p/3121661.html
Copyright © 2020-2023  润新知