html 页面资源加载顺序

<script> 元素属性:

async:异步加载
(限第三方脚本) 加载完执行 没有顺序 不推荐
在 js 中动态插入加载脚本的元素,默认加载方式为async异步加载,如果浏览器不支持异步加载,可以声明为同步加载。
 let script = document.creatElement('script') // 创建script 标签
 script.src = 'load.js' // 声明路径
 script.async = false // 声明同步加载 
 document.head.appendChild(script) // 头部添加
 // 通过js操作dom进行js加载的资源,浏览器预加载器不可见,会影响资源获取队列中的优先级,
 // 可以通过显式声明,让预加载器可见
 <link rel="preload" href="load.js">
defer: 文档完全被解析和显示之后再执行
(标签放到 body 的底部 效果一样 且兼容性好)
crossorigin:配置相关请求的跨域资源设置
(默认为匿名,不发送凭据:anonymous ) 凭据分三种:cookie、网站的 TLS 证书 、用户凭据(账号密码)  
凭据设置方法:crossorigin="use-credentials"
integrity:验证资源完整性
对比资源的签名以验证资源的完整性(不完整则不执行代码,防止资源被修改)
type: 脚本语言内容类型(MIME类型)
text/javascript: 默认
module: (ES6模块) 代码中允许出现 import 和 export 关键字。代码默认加载方式为 defer ,
加载完成后再执行 因为如果文件中包含其它依赖,则需要等待其它依赖加载完再执行,如果没有其它依赖,
可以设置加载方式为 async ,加载完立即执行。
nomodule: module属性的兼容写法
如果浏览器支持 module 属性,遇到 nomodule 属性,则不解析代码块,
否则,代码块照常运行,达到兼容 module属性的效果。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值