我们正在尝试构建一个abobe edge
用于动画的 HTML 游戏,并且这些动画被插入到iframes
. 我们正在尝试iframes
在删除“加载屏幕”之前预加载,以便用户最初不会看到空白 iframe。
这是加载iframes
.
我们有一个全局变量var middleBotLoaded = false;
以下函数尝试动态填充iframe
并且一旦iframe
加载,我们将分配variable
给true
function _trackIFrameLoading()
{
if (document.getElementById("botzmiddleidlesequence_iframe").attachEvent)
{
document.getElementById("botzmiddleidlesequence_iframe").attachEvent("onload", function() { middleBotLoaded = true; });
}
else
{
document.getElementById("botzmiddleidlesequence_iframe").onload = function() { middleBotLoaded = true; };
}
document.getElementById("botzmiddleidlesequence_iframe").src = APP_BASE_URL + "blitzbotzidlesequence/blitzbotz/"+middleBotzId;
}
我们有一个方法来检查全局变量是否已经变成,如果是,我们正在移除加载屏幕。该方法在500 毫秒内true
被调用interval
setTimeout(_haveAllCharactersLoaded,500);
function _haveAllCharactersLoaded()
{
if(middleBotLoaded == true)
{
$(jOverlay).fadeOut(800, function() {
$(jOverlay).remove();
});
}
else
{
setTimeout(_haveAllCharactersLoaded,500);
}
}
问题是即使加载屏幕消失后,iframe
内容也需要一段时间才能出现在屏幕上。
我们观察到持续时间取决于网络连接的速度,但是,并没有使用onload
确保内容已加载的全部意义。
有没有其他方法可以解决这个问题。
谢谢。
编辑:我必须等待两天才能开始赏金,但我愿意将其奖励给任何可以为该问题提供规范答案的人。