js如何使浏览器允许脚本异步加载

如果脚本体积很大,下载和执行的时间就会很长,因此造成浏览器堵塞,用户会感觉到浏览器“卡死”了,没有任何响应。这显然是很不好的体验,所以浏览器允许脚本异步加载,下面就是两种异步加载的语法。

<script src="path/to/myModule.js" defer></script>
<script src="path/to/myModule.js" async></script>

上面代码中,<script>标签打开deferasync属性,脚本就会异步加载。渲染引擎遇到这一行命令,就会开始下载外部脚本,但不会等它下载和执行,而是直接执行后面的命令。

deferasync的区别是defer要等到整个页面在内存中正常渲染结束(DOM 结构完全生成,以及其他脚本执行完成),才会执行;async一旦下载完,渲染引擎就会中断渲染,执行这个脚本以后,再继续渲染。一句话,defer是“渲染完再执行”,async是“下载完就执行”。另外,如果有多个defer脚本,会按照它们在页面出现的顺序加载,而多个async脚本是不能保证加载顺序的。

转载于:https://www.cnblogs.com/momozjm/p/8339922.html

js如何使浏览器允许脚本异步加载相关推荐

  1. highcharts.js两种数据绑定方式和异步加载数据的使用

    一,我们先来看看异步加载数据的写法(这是使用MVC的例子) 1>js写法 <script src="~/Scripts/jquery-2.1.4.min.js"> ...

  2. 百度联盟广告代码php,js 投放联盟广告代码可异步加载百度联盟广告

    js 投放联盟广告代码一般方法介绍,普通的加载方式容易阻塞页面加载,所以我们使用异步加载百度联盟广告代码,广告js代码就可以异步加载无阻塞 如果你有一个网站或者个人博客,想投放百度联盟广告代码以获取收 ...

  3. 浏览器渲染阻塞与优化-详解推迟加载、异步加载。

    我认为一个前端工程师是否优秀,很大程度上取决于对前端性能上优化的功力.所以性能优化对前端真的很重要!!! 本文介绍了什么是阻塞.为什么会阻塞?阻塞优化常用的5种方式以及他们的注意事项. 浏览器渲染阻塞 ...

  4. jekyll静态博客提升访问速度:内嵌CSS,异步加载js,压缩HTML

    在谷歌搜索的功能速度(实验性)中推荐使用工具PageSpeed Insights查看我的网页访问速度情况:PageSpeed Insights 分数很低,只有33分. 优化建议的第一条是移除阻塞渲染的 ...

  5. javascript 文件的同步加载与异步加载

    原文:[转载]javascript 文件的同步加载与异步加载 HTML 4.01 的script属性 charset: 可选.指定src引入代码的字符集,大多数浏览器忽略该值. defer: bool ...

  6. css 同步加载,同步加载,异步加载,懒加载,预加载

    同步加载 默认的就是同步加载 同步加载: 同步模式又称阻塞模式,会阻止浏览器的后续处理,停止了后续的文件的解析,执行,如图像的渲染.流览器之所以会采用同步模式,是因为加载的js文件中有对dom的操作, ...

  7. 7.JavaScript异步加载与加载时间线

    JavaScript异步加载与加载时间线 上一篇 JavaScript浅层克隆和深层克隆 下一篇 JavaScript事件处理模型 - 事件冒泡,捕获 文章目录 JavaScript异步加载与加载时间 ...

  8. js如何将数据放在一个内置窗口里面_Java 爬虫遇上数据异步加载,试试这两种办法!...

    这是 Java 爬虫系列博文的第三篇,在上一篇 Java 爬虫遇到需要登录的网站,该怎么办? 中,我们简单的讲解了爬虫时遇到登录问题的解决办法,在这篇文章中我们一起来聊一聊爬虫时遇到数据异步加载的问题 ...

  9. 网页性能优化之异步加载js文件

    一个网页的有很多地方可以进行性能优化,比较常见的一种方式就是异步加载js脚本文件.在谈异步加载之前,先来看看浏览器加载js文件的原理. 浏览器加载 JavaScript 脚本,主要通过<scri ...

最新文章

  1. 人工智能之自然语言的从新思考
  2. python的沙盒环境virtualenv(一)--作用
  3. JS —— 存取器属性get()和set()
  4. 手机计算机的隐藏小技巧,涨知识!MIUI计算器原来有这么多隐藏小技巧,最后一个绝对想不到...
  5. 安装SQL2005只有配置工具或 错误码是29506 解决方案
  6. 【资料篇】你需要掌握SEO的8个常用知识点
  7. C++ opengl 环境光分量
  8. 大工18秋计算机文化基础在线测试2,大工18秋《计算机文化基础》在线测试2【答案】...
  9. BZOJ1027 [JSOI2007]合金 【计算几何 + floyd】
  10. MediaPlayer/MediaRecorder与AudioTrack/AudioRecord区别(三十九)
  11. Aspose PDF预览出现乱码
  12. html展示微信昵称特殊字符,微信昵称表情符号前端显示问题
  13. python库文件简介整理
  14. Guarded Suspension模式
  15. dac芯片(国产dac芯片)
  16. vue 控制某个元素的显示或者隐藏之v-if属性
  17. 学习UI设计,哪些软件是必学的
  18. CodeBlocks(20.03)下安装easyx
  19. 【Java】数组Array(概念、相关语法、相关算法)
  20. 中秋将至,通过代码实现嫦娥奔月庆祝佳节

热门文章

  1. python出现套接字创建不成功_python套接字连接在Mac上被拒绝但在Windows
  2. 对未标记为可安全执行的脚本_Script Debugger for Mac(脚本调试软件)
  3. 简单mysql 查询_简单的mysql查询
  4. 计算机保存文档,2010年职称计算机考试:保存文档
  5. MarkDown 流程图 ... ...
  6. TCL中关于Cells的一些使用方法?
  7. 常见数字IC设计、FPGA工程师面试题
  8. 使用【Sources】源文件视图和RTL编辑器
  9. 分布式缓存的面试题3
  10. system generator学习笔记【02】