飘仙建站论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 873|回复: 0

[分享] 什么是同步加载与异步加载

[复制链接] |关注本帖
     

4312

主题

1万

帖子

36万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
367023

魅力奖活力之星热心会员

发表于 2018-9-5 10:44:11 | 显示全部楼层 |阅读模式
在加载数据时仍然执行其他程序,通常加载时是不执行程序的,我们不得不等进度条,因为很多程序在没有加载数据时,可能是无法运行的,所以通常会加载完之后才运行。我们平时建网站时最常使用的就是这种同步加载形式:

  1. <script src="js/jQuery.js"></script>
复制代码

同步模式,又称阻塞模式,会阻止浏览器的后续处理,停止了后续的解析,因此停止了后续的文件加载(如图像)、渲染、代码执行。

js 之所以要同步执行,是因为 js 中可能有输出 document 内容、修改dom、重定向等行为,所以默认同步执行才是安全的。

以前的一般建议是把<script>放在页面末尾</body>之前,这样尽可能减少这种阻塞行为,而先让页面展示出来。

什么是异步加载


异步加载就是在执行过程同时加载,通常会使图片之类重要性较次的东西,可以先忽略掉,比如网页游戏经常会在玩的过程中,玩家都是黑影(未加载图形,由其他黑影模型代替),如果另一个线程完成加载了,在贴上去,就是异步。

  1. $.getScript("test.js", function(){
  2. alert("Script loaded and executed.");
  3. });
复制代码

异步加载又叫非阻塞,浏览器在下载执行 js 同时,还会继续进行后续页面的处理。

这种方法是在页面中<script>标签内,用 js 创建一个 script 元素并插入到 document 中。这样就做到了非阻塞的下载 js 代码。
1.新手起步教程(含注册会员,注册域名,购买空间和网站备案教程)
2.教程看10遍不如动手做一遍! 多动手试试,在出错中解决问题.这样子效率最高!中国稳速
3.看帖回帖是种美德.您的一个帖子能给楼主很大的发帖动力!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|西部数码代理|飘仙建站论坛 ( 豫ICP备08106178号-2 )

GMT+8, 2019-1-16 16:31 , Processed in 0.125000 second(s), 35 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表