如何检查如果一个相同的域,动态加载的iframe,我没有控制是100%加载
how to check if a same domain, dynamically loaded iframe which i have no control over is 100% loaded?
Tumblr中的照片集是作为iframe提供的。
我想通过jQuery操纵这个iframe,让它看起来像我想要的那样,我也能做到,但它并不总是完成它正在做的事情。
我认为这是因为当页面加载时,有很多事情同时发生。我需要一种方法来检查这个我无法控制的iFrame,在我做有趣的事情之前加载100%。
在其他问题中提出了各种各样的技巧,但我认为它们不适合这种情况。下面是一个来自Stack Overflow问题"jQuery .ready in a dynamic inserted in a iframe"的例子
function callIframe(url, callback) {
$(document.body).append('<IFRAME id="myId" ...>');
$('iframe#myId').attr('src', url);
$('iframe#myId').load(function()
{
callback(this);
});
}
但这对我来说毫无意义,尽管它被选中了,有100个赞。在这个"答案"中,iframe被函数附加。这对我来说不是一个动态加载的iframe!
下面是我的代码与'哑' iframe加载检查器。代码可以工作,但只是有时。你可以在这里看到它的作用http://syndex.me(第三篇文章是一个照片)$(".post_relative").each(function () {
var post_relative = $(this);
var photoset = post_relative.find('.html_photoset');
if(photoset.length){
var myFrame = photoset.find("iframe");
myFrame.load(function(){
var newCover=myFrame.contents().find('.photoset').children(':first-child').children(':first-child').attr("href")+ '?'+(Math.random()*10000);
post_relative.append("<img src='"+ newCover +"' alt='Cover Page' />");
var psHeight = post_relative.find('img');
psHeight.load(function(){
if (psHeight.height()>heightRef){
psHeight.height(heightRef);
}
myFrame.hide();
})
})
}
});
所以问题是:你如何执行一个脚本基于100%的加载和准备的iframe?
使用onload事件在每个帧的上下文中写入数据。您有两个选项:
- <
- 饼干/gh>
- localStorage
第二个是一个非常好的解决方案,但它不支持IE7。如果它在相同的模式、域和端口中,那么您可以从两个框架中访问这些项。
如果你使用jquery,你有没有尝试过
$("#iFrameId").load(function (){
// do something once the iframe is loaded
});
相关文章:
- 使用php脚本验证访问者的年龄,并在不刷新的情况下根据结果加载iframe
- 使用Javascript(或jQuery)加载iframe内容
- Internet Explorer重新加载IFrame
- Fine Uploader-未收到来自已加载iframe的有效消息
- 使用本地生成的代码通过 JavaScript 加载 IFrame
- 加载iframe时激发的事件
- 动态渲染 .mht 文件,无需加载/iframe/嵌入
- 如何在选择列表项时重新加载iframe
- 如何使用JavaScript在iframe中重新加载iframe
- 在featherlight.js中延迟加载iFrame
- 实时在更改时重新加载iframe脚本
- 如何在不闪烁的情况下加载Iframe
- 如何按时间间隔重新加载Iframe内容,使其不会闪烁
- 设置 URL 以在 Django 模板中加载 iframe
- 在离开页面之前加载 iframe
- 加载 Iframe src,并从水平下拉菜单中进行选择
- 同时加载 iframe 并重置文档位置
- 单击按钮时重新加载 iframe 内容(本地 HTML)
- 单击元素时重新加载 iframe src
- 在可见时加载 iframe