相关疑难解决方法(0)

jQuery .ready在动态插入的iframe中

当有人点击图片时,我们使用jQuery thickbox动态显示iframe.在这个iframe中,我们使用galleria一个javascript库来显示多张图片.

问题似乎是$(document).ready在iframe似乎过早被解雇并且iframe内容甚至尚未加载,因此galleria代码未在DOM元素上正确应用. $(document).ready似乎使用iframe父就绪状态来决定iframe是否准备就绪.

如果我们在单独的函数中提取由文档就绪调用的函数,并在超过100毫秒后调用它.它有效,但我们不能利用慢速计算机生产机会.

$(document).ready(function() { setTimeout(ApplyGalleria, 100); });
Run Code Online (Sandbox Code Playgroud)

我的问题:我们应该绑定哪个jQuery事件,以便在动态iframe准备就绪时能够执行我们的代码,而不仅仅是它的父级?

javascript iframe jquery thickbox galleria

181
推荐指数
4
解决办法
34万
查看次数

如何知道DIV中的所有元素是否已满载?

有一个div通过Ajax加载的元素(图像,iframe等).这些元素完全加载后,我需要执行一个函数div.

如何确定所有元素div是否已完全加载?

我使用jQuery作为库.

jquery load

6
推荐指数
1
解决办法
1万
查看次数

检查元素是否已加载

我有一个站点和该站点中的 iFrame,以及许多其他内容(图像等)。

现在我使用 jQuery$(document).ready(function() { ... });来执行代码。在该代码中,我试图操作 iFrame 中的内容。但是,我必须确保加载 iFrame 才能执行代码。

iFrame 通常在代码执行的同时加载,所以它有时会失败,有时不会。

如果我使用$('#iframe').load(function(){ });,该事件并不总是执行,因为在那一刻我附加了加载侦听器,iFrame 可能已经完成加载,并且加载事件不会再次执行。如果我把它放在一边,元素有时还不存在(代码执行得太早)。

所以我想要实现的是这样的:

if iFrame is already loaded
  -- execute code 
else 
  -- $('#iframe').load(function() { /*execute code*/ });
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法可以在不使用脏超时的情况下实现这一目标?或者如果使用这种方法,是否有一个函数可以检查元素是否已经加载?

jquery events dom loading

5
推荐指数
1
解决办法
4万
查看次数

Javascript:检测何时无法通过src添加iframe

给定的第三方脚本在一定条件下会向DOM添加一个iframe。如果iframe正确加载,则说明一切完成。但是,有时,该iframe的src会导致404,网络超时或其他错误。第三方脚本无法正常处理。

我想在我的脚本中对此进行监视,并且每当iframe加载失败时,都会触发我的脚本。有什么办法吗?它看起来像这样:

function callWhenElementFails(element) {
   if (element is_a iframe)
        invoke_my_handler;
   else
        do nothing
}
Run Code Online (Sandbox Code Playgroud)

一个简单的问题:给定一个iframe元素,我如何检查它是否已加载或失败?我可以在开发人员工具的“网络”标签下看到src失败;如何以编程方式查询此内容。

请注意,我的代码不是加载iframe的代码,并且很难修改第三方代码并向其中添加一些内容。

检测iframe src是否是可显示的抓斗,并且存在类似的问题,但不能成功。

突变观察者可能是一种方法,尽管我希望更简单的方法会更好。

javascript error-handling iframe

5
推荐指数
1
解决办法
175
查看次数

标签 统计

jquery ×3

iframe ×2

javascript ×2

dom ×1

error-handling ×1

events ×1

galleria ×1

load ×1

loading ×1

thickbox ×1