HTML5 script元素async、defer异步加载使用介绍

接下来我将为你详细讲解一下“HTML5 script元素async、defer异步加载使用介绍”的完整攻略。

什么是async、defer异步加载

在HTML5中,script标签有两个属性可以实现异步加载,分别是async和defer。

async属性定义了脚本是否异步加载,异步加载的脚本不会阻塞页面的加载。

defer属性定义了脚本是否延迟执行,延迟执行的脚本会在HTML文档解析完成后,DOMContentLoaded事件触发前执行。defer属性只对外部脚本有效,内部脚本会自动当做defer处理。

async和defer的用法

async使用示例

<!DOCTYPE html>
<html>
  <head>
    <title>async示例</title>
  </head>
  <body>
    <h1>async示例</h1>
    <script src="./js/script1.js" async></script>
    <script src="./js/script2.js" async></script>
    <script>
      console.log('这里是内联脚本');
    </script>
    <p>这里是网页主体内容</p>
  </body>
</html>

上述代码会异步加载script1.js和script2.js脚本,因此这两个脚本不会阻塞页面的加载。另外,内联脚本会在DOM构建完成后执行。

defer使用示例

<!DOCTYPE html>
<html>
  <head>
    <title>defer示例</title>
    <script src="./js/script1.js" defer></script>
    <script src="./js/script2.js" defer></script>
  </head>
  <body>
    <h1>defer示例</h1>
    <p>这里是网页主体内容</p>
  </body>
</html>

上述代码会延迟执行script1.js和script2.js脚本,因此这两个脚本会在HTML文档解析完成后,在DOMContentLoaded事件触发前被执行。

总结

async属性让脚本异步执行,不会阻塞页面的渲染和用户的交互。defer属性也能实现异步加载,但是会在DOMContentLoaded事件触发前执行。我们可以根据实际需求选择使用。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:HTML5 script元素async、defer异步加载使用介绍 - Python技术站

(0)
上一篇 2023年5月27日
下一篇 2023年5月27日

相关文章

  • javascript计算用户打开网页的停留时间

    要计算用户在网页的停留时间,最常用的方法是使用JavaScript。下面是一个完整的攻略: 步骤1:获取网页打开时间 用JavaScript获取网页打开的时间是很简单的。可以使用Date对象来获取当前时间,并将其存储在一个变量中。以下是一个示例代码块: var startTime = new Date().getTime(); 步骤2:获取用户离开网页的时间…

    JavaScript 2023年6月11日
    00
  • 带你揭开神秘的Javascript AST面纱之Babel AST 四件套的使用方法

    作者:京东零售 周明亮 写在前面 这里我们初步提到了一些基础概念和应用: 分析器 抽象语法树 AST AST 在 JS 中的用途 AST 的应用实践 有了初步的认识,还有常规的代码改造应用实践,现在我们来详细说说使用 AST, 如何进行代码改造? Babel AST 四件套的使用方法 其实在解析 AST 这个工具上,有很多可以使用,上文我们已经提到过了。对于…

    JavaScript 2023年4月17日
    00
  • js如何判断不同系统的浏览器类型

    要判断不同系统的浏览器类型,可以使用JavaScript中的navigator对象。navigator对象提供了访问浏览器相关信息的接口,可以用来获取浏览器的名称、版本号、运行平台等信息。 下面是判断浏览器类型的基本步骤: 获取浏览器的代理字符串 JavaScript中的navigator对象上有一个userAgent属性,它是一个字符串,保存了浏览器提供的…

    JavaScript 2023年6月11日
    00
  • IOS游戏开发之五子棋OC版

    《IOS游戏开发之五子棋OC版》是一篇很好的开发攻略,下面我将详细讲解这篇攻略的内容。 标题1 标题2 标题3 首先,这篇攻略中介绍了五子棋游戏的规则,包括如何在棋盘上下棋,以及如何判断胜负等。然后,文章介绍了如何通过Objective-C来实现五子棋游戏的逻辑,包括如何设计数据模型、如何处理用户的操作以及如何判断胜负等。 示例1:在代码实现方面,作者给出了…

    JavaScript 2023年6月11日
    00
  • 从面试题学习Javascript 面向对象(创建对象)

    很高兴能够为你详细讲解“从面试题学习Javascript 面向对象(创建对象)”的完整攻略。下面我将为你提供详细的自学指导及相关示例。 学习Javascript面向对象的创建对象 了解Javascript中对象的创建方式 在Javascript中,有多种创建对象的方式,包括: 对象字面量语法 构造函数 Object.create方法 工厂函数等 在学习创建对…

    JavaScript 2023年5月27日
    00
  • 超详细的JS弹出窗口代码大全

    超详细的JS弹出窗口代码大全 JavaScript弹出窗口是一种常见的前端交互方式,可以让网站更加美观和实用。本文将为大家介绍超详细的JS弹出窗口代码大全,包括弹出模态框、提示框、提示确认框等几种常见的弹窗,以及一些实用的技巧和注意事项。 弹出模态框 模态框是一种常见的弹出框类型,可以在当前页面上弹出一个居中的对话框,并阻止用户对其他元素进行操作。下面是一个…

    JavaScript 2023年5月27日
    00
  • xml转json的js代码

    XML转JSON是开发过程中常见的问题,有时候需要将后端返回的XML数据转换为前端需要的JSON格式。以下是XML转JSON的JS代码的详细攻略: 一、XML转JSON的原理 XML和JSON是两种不同的数据格式,因此需要编写代码将XML转换为JSON格式。XML数据以标签为基础,有嵌套的结构关系,而JSON数据则以键值对为基础,没有嵌套的结构关系。因此,将…

    JavaScript 2023年5月27日
    00
  • JavaScript 类型转换的详细实现

    下面是 JavaScript 类型转换的详细实现攻略。 1. 强制类型转换 JavaScript 中的强制类型转换是将一种类型的值转换为另一种类型的值。主要有以下几种类型转换的方式: 1.1 ToPrimitive:将值转换为基本类型值 使用 ToPrimitive 算法可以将一个值转换为基本类型值。该算法通常会被 JavaScript 内部的隐式类型转换所…

    JavaScript 2023年5月18日
    00
合作推广
合作推广
分享本页
返回顶部