jquery - 在 jQuery 中创建动态 iframe 的更好方法?

标签 jquery iframe

所以我有以下代码,它执行 setInterval 直到 iframe 可供写入。

$( '#testdiv').append( $('<iframe id="testiframe"/>') );
var t = setInterval(function(){
    if(document.getElementById('testiframe') !== 'undefined'){
        clearInterval(t);
        $('#testiframe').contents().find('body').append('asd'); 
    }
}, 15);

基本上,jQuery 创建 iframe 元素并将其加载到 DOM 中。然而,iframe 无法立即使用,因此额外的 jQuery 调用被编码为在之后立即发生。使用这段代码,它会执行一个简单的间隔检查,直到新的 iframe 可用,然后将“asd”写入其内容。

我花了大约一个小时尝试将方法链接到 iframe 创建的不同方法,但没有任何效果。这一切似乎只是时间问题。我尝试了 $('#testiframe').live('load',function(){});但这根本不起作用。

那么有人对此有更清晰的建议吗?

最佳答案

也许只是一个没有现场的常规事件?

$('<iframe id="testiframe"/>').load(function(){
    $('#testiframe').contents().find('body').append('asd');
}).appendTo("#testdiv");

关于jquery - 在 jQuery 中创建动态 iframe 的更好方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1704955/

相关文章:

jquery - jQuery 中最快的 children() 或 find() 是什么?

java - jQuery - 在对话框 iframe 中运行函数

jquery - 如何定位其类不包含该元素 ID 的元素?

javascript - 禁用 iframe 内的输入字段

javascript - 从 iframe 获取文本并设置范围

javascript - 使 iframe 只读

javascript - 使用 jquery 设置 fancybox 高度

javascript - 使用 iframe 加载本地文件

javascript - 通过 jquery 添加和操作 div,而不使用任何 html 之类的代码

jquery选择所有br并显示:none;