[英]jquery .load callback never called in Internet Explorer
我通过此处所述的IFRAME方法下载文件:
http://encosia.com/2007/02/23/ajax-file-downloads-and-iframes/
并在div中显示进度,并在加载完成时隐藏此div:
$(objIframe).load(function() {
$("#spinner").hide();
});
问题是,此回调函数从未在Internet Explorer中调用,但在FireFox中仍然可以正常工作。 我已将随机值添加到查询请求字符串中以避免缓存。 为什么不调用回调?
这是我最后的尝试。
// prepare iframe
setTimeout(checkReadyState, 100);
function checkReadyState() {
if (objIframe.contentWindow.document.readState !== "complete") {
setTimeout(checkReadyState, 100);
}
else {
$("#spinner").hide();
}
}
据我所知,如果内容不是某种HTML文档,onLoad不会触发。 至少在我的测试中,它倾向于对例如文本文件,html,图像等成功,但对大多数其他事物却不成功。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.