JavaScript 脚本延迟加载方式

这篇具有很好参考价值的文章主要介绍了JavaScript 脚本延迟加载方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1. defer属性

用来通知浏览器该脚本将在文档完成解析后,触发 DOMContentLoaded 事件前执行。 有 defer 属性的脚本会阻止 DOMContentLoaded 事件,直到脚本被加载并且解析完成。

defer 属性必须配合 src 属性使用

defer 属性对于模块脚本没有作用

2. async 属性

对于普通脚本,如果存在 async 属性,那么普通脚本会被并行请求,并尽快解析和执行。

对于模块脚本,如果存在 async 属性,那么脚本及其所有依赖都会在延缓队列中执行,因此它们会被并行请求,并尽快解析和执行。

该属性能够消除解析阻塞的 Javascript。

解析阻塞的 Javascript 会导致浏览器必须加载并且执行脚本,之后才能继续解析。文章来源地址https://www.toymoban.com/news/detail-450490.html

3. 动态创建script 标签

let script = document.createElement("script")
script.src = 'xxx'
document.body.appendChild(script)

4. setTimeout 延迟加载

5. 放在文档底部

到了这里,关于JavaScript 脚本延迟加载方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • script 标签中 async 和 defer 属性的作用分别是什么?

    前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发者,这里都将为你提供一个系统而又亲切的学习平台。在这个

    2024年02月13日
    浏览(39)
  • defer 和 async:JavaScript异步编程的利器

    🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_ CSDN 博客专家、23年度博客之星前端领域TOP1 🕠 牛客 高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课 签约作者、上架课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你

    2024年03月24日
    浏览(42)
  • 玩转代码|Script 标签中的async与defer属性详细分析

    在面试的时候,经常会遇到一道经典的面试题: 如何优化网页加载速度? 常规的回答中总会有一条: 把 css 文件放在页面顶部,把 js 文件放在页面底部。 那么,为什么要把 js 文件放在页面的最底部呢? 我们先来看下这段代码: 他的执行顺序是: 在控制台打印: Howdy ~ 请

    2024年02月15日
    浏览(36)
  • arcgis javascript api4.x以basetilelayer方式加载arcgis发布的栅格切片服务

    以arcgis js api的basetilelayer加载arcgis发布的栅格切片服务 https://map.geoq.cn/arcgis/rest/services/ChinaOnlineCommunity/MapServer/?f=pjson 这样获取 https://map.geoq.cn/arcgis/rest/services/ChinaOnlineCommunity/MapServer/WMTS/1.0.0/WMTSCapabilities.xml   先确保以一张为例有结果返回 https://map.geoq.cn/arcgis/rest/services/ChinaO

    2024年01月19日
    浏览(39)
  • 【HTML5高级第三篇】drag拖拽、音频视频、defer/async属性、dialog应用

    原生JavaScipt案例合集 JavaScript +DOM基础 JavaScript 基础到高级 Canvas游戏开发 1.1 拖拽事件 ondrag: 拖拽 ondragenter: 拖拽进入 ondragleave: 拖拽离开 ondragstart: 拖拽开始 ondragend: 拖拽结束 ondragover:悬浮 ondrop: 丢弃事件 该事件有一个bug,dargover事件中的默认行为阻止了ondrop事件不能够执行,

    2024年02月09日
    浏览(37)
  • Javascript/Node.JS中如何用多种方式避免属性为空(cannot read property of undefined ERROR)

    \\\"cannot read property of undefined\\\" 是一个常见的 JavaScript 错误,包含我在内很多人都会遇到,表示你试图访问一个未定义(undefined)对象的属性。这通常是因为你在访问一个不存在的对象或者变量。为了解决这个问题,你需要检查你的代码,确保在访问对象属性之前,对象已经被正

    2024年04月09日
    浏览(36)
  • arcgis javascript api4.x以basetilelayer方式加载天地图web墨卡托(wkid:3857)坐标系

    arcgis javascript api4.x以basetilelayer方式加载天地图web墨卡托(wkid:3857)坐标系 提示: 2个文件放同一个文件夹下 MyCustomTileLayer.js loadtdt3857.html https://www.cnblogs.com/hjyjack9563-bk/p/16067633.html

    2024年01月19日
    浏览(33)
  • jira获取issue条目transitions id,以用来进行流转实用脚本

    官方文档链接地址: The Jira Cloud platform REST API GET Returns either all transitions or a transition that can be performed by the user on an issue, based on the issue\\\'s status. Note, if a request is made for a transition that does not exist or cannot be performed on the issue, given its status, the response will return any empty transitions list.

    2024年02月09日
    浏览(32)
  • 基于Node.js 和 FFmpeg构建自动化脚本用来转码视频

    这个脚本将监控一个特定的目录,自动转码新添加的视频文件,并将转码后的视频保存到指定目录。 准备环境 安装 Node.js : 访问 Node.js 官网,下载并安装适合你操作系统的 Node.js 版本。 安装 FFmpeg(不清楚的可以看我的上篇博客里有详细的安装步骤) : 对于 Windows 用户,可以从

    2024年03月27日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包