繁体   English   中英

从未在Internet Explorer中调用过jquery .load回调

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM