我试图检测 iframe 及其内容何时加载完成,但是没有太大的成功。我的应用程序在父窗口中的文本字段中接受一些输入并更新 iframe 以提供“实时预览”。
我最初使用以下代码(YUI)来检测 iframe 加载事件的发生。
$E.on('preview-pane', 'load', function(){
previewBody = $('preview-pane').contentWindow.document.getElementsByTagName('body')[0];
}
'preview-pane' 是我的 iframe 的 ID,我正在使用 YUI 来附加事件处理程序。但是,在我的回调函数中(当 iframe 加载时),尝试访问 body 会失败,我认为这是因为 iframe 在事件处理程序准备好之前就已经加载了。如果我通过让生成它的 PHP 脚本休眠来延迟 iframe 的加载,则此代码有效。基本上,我想问的是在各种浏览器中检测 iframe 何时已加载并且其文档已准备好的正确方法是什么?