场景:预加载图像
- 执行 ajax 查询
- 显示加载屏幕
- 从 ajax 查询中检索结果
- 将图像插入 dom
- 等待图像完成加载
- 隐藏加载屏幕
我正在考虑执行以下操作:
function ajaxCallback(results) {
/* snip insert into dom code */
$(".waitForLoad").each(function() {
imageLoadingCount++;
$(this).load(imageLoaded);
});
}
var imageLoadingCount = 0;
function imageLoaded() {
imageLoadingCount--;
if (imageLoadingCount == 0)
HideLoadingScreen();
}
我不太确定浏览器 DOM 和 javascript 之间的交互。DOM 在开始加载图像之前是否等待 javascript 完成执行?我担心可能的比赛条件。