首页 > web前端 > js教程 > 为什么 jQuery .ready 在动态插入的 iFrame 中过早触发?

为什么 jQuery .ready 在动态插入的 iFrame 中过早触发?

Barbara Streisand
发布: 2024-11-15 06:52:02
原创
990 人浏览过

Why Does jQuery .ready Fire Prematurely in Dynamically Inserted iFrames?

动态插入的iFrame和jQuery .ready事件

当使用jQuery的thickbox插件动态显示包含galeria JavaScript库的iframe时,您可能会遇到 $(document).ready 事件在 iframe 中过早触发的问题,导致 Galleria 代码应用不正确。

根本原因

$(document).ready 事件依赖于父文档的就绪状态来确定 iframe 的就绪情况。然而,在动态插入的 iFrame 中,父级的就绪状态可能表明 iframe 已就绪,即使 iframe 内容本身尚未加载。

替代解决方案

A更可靠的方法是绑定到 iframe 自己的加载事件。这可以确保您的代码仅在 iframe 的内容加载完成时执行。

代码片段

function callIframe(url, callback) {
    $(document.body).append('<IFRAME>
登录后复制

通过使用 load 事件,您可以控制时间更准确地控制代码的执行,并避免在动态插入的 iFrame 中过早执行。

以上是为什么 jQuery .ready 在动态插入的 iFrame 中过早触发?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板