老师,在img的onload事件开始之前就把图片url赋值给img的src属性,也可以实现异步加载图片
来源:5-2 Promise的应用
阿惹
2022-05-11 11:55:33
我的疑惑是,规范的做法是img.src=url这步操作到底是在图片事件之前还是之后呢。 我的理解是应该在onload事件之前,按照执行顺序,赋值完成之后才可以执行onload事件,这样才可以返回成功状态,异步加载图片才可以实现。 但是视频中老师是把img.src=url放在了图片事件之后,为什么这样也可以实现呢,执行顺序不是从上到下吗,onload事件的那一步还没有获取到img的src属性, 那怎么会返回成功状态呢。1回答
同学你好,解答如下:
1、img.src=url这句代码,写在onload前、后都行。
2、关键点在于onload是事件,图片加载过程是异步的,图片加载成功后,才会触发onload事件。 img.onload = () => {xxx}这句代码,只是给img对象绑定事件onload。
由于将真正的图片加载完成需要时间,而代码执行速度很快,所以先绑定事件、后绑定事件都行(注意图中注释文字):

祝学习愉快!
相似问题
回答 1
回答 1
回答 4
回答 1
回答 1