2010-06-22 111 views
4

当我使用fancybox for iframe时,加载图标不显示,而fancybox加载...显示fancybox加载图标

我该如何解决这个问题?

在此先感谢。

+0

哪个加载图标啥意思? “fancybox is loaded”,javascript或iframe是什么意思? – 2010-06-22 16:28:25

+0

你有没有在firbug net tab中看到任何404?检查一次。 – 2010-06-22 16:29:02

+0

正常情况下,当我单击使用fancybox的链接时,屏幕中央会显示一个小的加载图标,但如果fancybox类型是iframe,图标不会显示... – 2010-06-22 16:32:30

回答

4

Fancybox在使用iframe时会有一些错误或问题。

您可以编辑源代码(不压缩,打包或精缩版),并把这个:

$.fn.fancybox.showLoading(); 

对于的fancybox 2显示负载箱:在此之后右

$.fancybox.showLoading() ; 

} else if (href.match("iframe") || elem.className.indexOf ("iframe") >= 0) { 

我认为它在行号131,但我不知道你只是需要搜索在源代码中。

这和诺特尔(更复杂)的解决方案,是的fancybox的支持组:

Fancybox iframe loading icon fix

loading indicator

还是在Fancybox support group搜索。

好看!

+0

fancybox 1.3.1中没有这样的行! – 2010-06-24 18:00:09

+0

mmm所以他们正在谈论脚本的早期版本......这些支持小组中没有其他的东西吗?也许你可以在那里打开一个新的帖子... – Jonathan 2010-06-24 19:13:26

+0

我在G组发现的另一个选项是改变覆盖(#v2.0.6中的fancybox覆盖)作为加载微调,当iframe最终加载它时超过微调。 – 2012-08-15 12:41:47

4

对于覆盖

的fancybox 2显示加载器来显示

$.fancybox.showLoading(); 
$.fancybox.helpers.overlay.open({parent: $('body'), closeClick : false}); 

要隐藏

$.fancybox.hideLoading(); 
$.fancybox.helpers.overlay.close();