4

我有一个加载外部域的 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 技巧(据我所知)。

4

1 回答 1

0

尝试这个:

$($('#myIframe')[0].document).ready(function() {
   alert('loaded');    
});

http://jsfiddle.net/DepKF/33/

于 2013-06-13T23:40:27.407 回答