iframe的Javascript事件已完成加载

时间:2013-10-10 06:41:57

标签: javascript jquery iframe

当隐藏的iframe完成下载文件(或开始下载文件)时,我正在寻找一种检测和调用函数的方法。

基本上,我有这个:

var iframe = document.getElementById("prodFrame");
iframe.src = "url to download file";
$("#prodFrame").load(function(){
    enableDownloadFunction();
});

哪个不起作用。我也试过了iframe.onload并且没有得到任何结果。使用这些尝试之一,文件下载正常,但enableDownloadFunction();永远不会触发。在隐藏的iframe中加载的url大约需要2到3分钟来完成它并准备好下载文件。实际下载文件只需要一两秒钟。所以,我只是希望在文件开始下载或完成下载时发生一些事情 - 这两种情况都可以。

另外,我无法访问服务器端的东西 - 只有客户端。

1 个答案:

答案 0 :(得分:0)

在iframes文档对象上使用jquery ready

$(document).ready(function(){
    var iframe = document.getElementById("prodFrame");
    $( iframe.contentDocument ).ready(function() {
        enableDownloadFunction();
    });
});

但jep - 已经过测试,无法获取下载事件,因为系统会提示“选择您的位置”对话框