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日

相关文章

  • element中el-form-item属性prop踩坑

    el-form-item 是 ElementUI 中用于包装表单元素的组件,通常用于和 el-form 配合实现表单功能。el-form-item 提供了一个 prop 属性,用于指定表单项对应数据对象中对应属性的名称。 但是在使用 prop 属性时,需要注意一些坑点: prop 值必须与表单数据对象中的属性名称保持一致,否则表单项将无法与数据对象进行双向绑…

    JavaScript 2023年6月10日
    00
  • 使用php操作xml教程

    接下来我将为您详细讲解如何使用PHP操作XML文档的完整攻略。 1. 安装PHP SimpleXML模块 在使用PHP操作XML文档之前,我们需要确保已经安装了PHP SimpleXML模块。可以通过执行以下代码确认是否已安装: <?php phpinfo(); ?> 查询结果中有SimpleXML模块则表示已安装,否则需要手动安装该模块。 2.…

    JavaScript 2023年6月11日
    00
  • Js数组的操作push,pop,shift,unshift等方法详细介绍

    Js数组的操作push,pop,shift,unshift等方法详细介绍 在JavaScript中,数组是一个非常重要的数据结构,它可以存储很多不同类型的数据。对于数组的操作,包括增加、删除、遍历和排序等,都是非常常见的。本文将详细介绍数组中的push、pop、shift、unshift等方法的使用方法和实例说明。 push方法 push方法可以在数组的末尾…

    JavaScript 2023年5月27日
    00
  • js 数组 fill() 填充方法

    JS 数组 fill() 填充方法 简介 在 JS 中,fill() 方法可以用来填充数组的某一段区间,即将数组中的所有元素都替换为指定的值。fill() 方法接收三个参数:要填充的值、起始位置和终止位置(不包括终止位置本身)。这个方法具有可变性,即不会创建新的数组,而是直接修改原数组。 语法 arr.fill(value, start, end) valu…

    JavaScript 2023年5月27日
    00
  • javascript字符串对象常用api函数小结(连接,替换,分割,转换等)

    下面是详细讲解“JavaScript字符串对象常用API函数小结(连接,替换,分割,转换等)”的完整攻略。 一、JavaScript字符串对象 JavaScript字符串对象是JavaScript中表示字符序列的数据类型,字符串是用于存储和操作文本的任意数量的字符的数据类型。 在JavaScript中,字符串可以使用单引号(’ ‘)或双引号(” “)引起来。…

    JavaScript 2023年5月28日
    00
  • 一文了解ES5和ES6的区别

    一文了解ES5和ES6的区别 Javascript是世界上最流行的编程语言之一,它一直在不断发展和更新。ES5和ES6是Javascript的两个主要版本,它们之间存在很多重要的区别。本文将详细讲解ES5和ES6的区别,以便更好地理解现代的Javascript编程。 1. 变量声明的关键字不同 在ES5中,使用var关键字声明变量。例如: var x = 1…

    JavaScript 2023年6月10日
    00
  • js操作数组函数实例小结

    让我来详细讲解一下“js操作数组函数实例小结”的攻略。 一、前言 JavaScript中的数组非常强大,可以通过使用一系列内置函数来实现对数组的操作,例如增删改查、排序等等。这些函数能给程序员带来很大的便利,让我们的编码效率成倍提升。 二、常用操作函数 下面是一些常用的操作数组的函数: 1. push和pop push和pop用于在数组的末尾添加或删除数据。…

    JavaScript 2023年5月27日
    00
  • JS如何实现一个单文件组件

    要实现一个单文件组件,我们需要使用Vue.js这个通用的组件框架来开发。 以下是实现一个单文件组件的步骤: 第一步:安装和配置Vue.js 在项目文件夹下运行以下命令安装Vue.js npm install -g vue 创建一个Vue项目 vue create my-project 运行Vue项目 cd my-project npm run serve 第…

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