Javascript /jquery:检测iframe页面加载失败

javascript/jquery: detect if iframe page failed to load

本文关键字:加载 失败 iframe 检测 jquery Javascript      更新时间:2023-09-26

我有一个iframe,它加载了一个外部域,有时该域宕机或超时。我一直在试图找出如何检测iframe页面是否加载失败。我不能使用AJAX,因为域名与主机页面不同(跨域保护)。

下面是我认为它应该如何工作的示例代码(但它没有):

<!doctype html>
<html>
  <head>
  </head>
  <body>
    <iframe id="myIframe" src="http://www.domain.com/"></iframe>
    <script src="jquery.min.js"></script>
    <script>
        $('#myIframe').on('load',function() {
            alert('Loaded correctly');
        });
        $('#myIframe').on('error',function() {
            alert('Load failed!');
        });
    </script>
  </body>
</html>

我没有能力在远程域上添加代码或上传jsonp文件,因此AJAX/jsonp技巧是不可能的(据我所知)。

试试这个:

$($('#myIframe')[0].document).ready(function() {
   alert('loaded');    
});
http://jsfiddle.net/DepKF/33/