当iframe完成加载时JavaScript回调?当iframe完成加载时,我需要执行回调。我无法控制iframe中的内容,所以我不能从那里启动回调。这个iframe是编程创建的,我需要将其数据作为回调中的变量传递,并销毁iframe。有什么想法吗?编辑:我现在拥有的是:function xssRequest(url, callback){
var iFrameObj = document.createElement('IFRAME');
iFrameObj.src = url;
document.body.appendChild(iFrameObj);
$(iFrameObj).load(function()
{
document.body.removeChild(iFrameObj);
callback(iFrameObj.innerHTML);
});}此回调在iframe加载之前进行,因此回调不返回数据。
3 回答
GCT1015
TA贡献1827条经验 获得超4个赞
// possibly excessive use of jQuery - but I've got a live working example in production$('#myUniqueID').load(function () { if (typeof callback == 'function') { callback($('body', this.contentWindow.document).html()); } setTimeout(function () {$('#frameId').remove();}, 50);});
慕哥9229398
TA贡献1877条经验 获得超6个赞
我使用的是jQuery,令人惊讶的是,这似乎是加载的,因为我刚刚测试并加载了一个沉重的页面,直到我看到iframe加载时才收到警报:
$('#the_iframe').load(function(){ alert('loaded!');});
因此,如果您不想使用jQuery,看看它们的源代码,看看这个函数在iframe DOM元素中的行为是否不同,我将在稍后查看它。
添加回答
举报
0/150
提交
取消