javascript - 如何在网页上加载图像之前显示加载器覆盖?
问题描述
我想制作一个加载叠加层,但setTimeout
我想显示“加载器”,直到第一个图像完全加载到网页上。(之后,我想使用延迟图像加载)
到目前为止,我使用了 setTimeout,但效果并不好。我可以设置更大的时间,但现在加载器和图像出现之间存在“间隙”。
图片网址是从 wordpress API 获取的,我正在使用模板。我想要的是显示“加载”覆盖,直到第一个图像完全加载,所以用户看不到空白状态。
var img = document.querySelector("#img");
img.onload = function(){
document.getElementById("loading").style.display = "none"
}
我不能使用 jQuery,因为它是用于学校项目的。我通过console.log("loaded")
在加载时添加 a 来尝试在这里找到的所有替代方法,但似乎没有任何效果。
解决方案
也许在定义 onload 之后设置 img.src
let img = document.createElement('img');
img.onload = function(){}
img.src = "url"
推荐阅读
- java - 如何在不使用按钮或提交的情况下使用数据库值自动填充 jsp 文本框?
- c++ - 为什么我的变量尚未设置为任何值时返回一个值?
- python - 如何在数据框的每一列上计算修改后的 Z 分数和 IQR
- node.js - 像亚马逊一样关闭浏览器后我应该学什么存储购物卡?
- xcode - 未定义的符号 ___llvm_profile_runtime
- php - 控制器中的 Silex 重定向
- android-studio - Android Studio 3.5 中未出现导航图
- search - 如何让网页显示在搜索结果中
- css - 如何使用 CSS Grid 制作列表详细信息视图?
- javascript - Jquery .clone() 只工作一次