我通过此处描述的IFRAME方法下载文件:
http://encosia.com/2007/02/23/ajax-file-downloads-and-iframes/
我在div中显示进度并在加载完成时隐藏此div:
$(objIframe).load(function() {
$("#spinner").hide();
});
麻烦的是,这个回调函数永远不会在Internet Explorer中调用,但它在FireFox中工作正常。我已将随机值添加到查询请求字符串以避免缓存。为什么回调没有被调用?
答案 0 :(得分:1)
这是我最后的尝试。
// prepare iframe
setTimeout(checkReadyState, 100);
function checkReadyState() {
if (objIframe.contentWindow.document.readState !== "complete") {
setTimeout(checkReadyState, 100);
}
else {
$("#spinner").hide();
}
}
答案 1 :(得分:0)
据我所知,如果内容不是某种HTML文档,onLoad将不会触发。至少在我的测试中,它往往成功,例如文本文件,html,图像等,但大多数其他事情都失败了。