我有一个加载外部域的 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');
});
关于JavaScript/jQuery : detect if iframe page failed to load,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17098900/