2014-10-04 63 views
0

我正在使用fancybox 2为一系列缩略图显示较大的弹出图像。在首页加载时,单击图像无法加载fancybox弹出窗口。我看到加载微调器的轻微闪烁,如果我打开网络检查器,我会在消失之前看到fancybox加载div一秒钟。Fancybox 2在刷新页面之前无法显示图像

但是,如果我刷新页面,fancybox页面工作得很好。这一切发生在所有页面上,具有相同的花哨框设置,并发生在Safari和Chrome中。图像存储在Amazon S3上。

任何想法?

//Javascript 

$(function() { 
    return $(".fancybox").attr("rel", "gallery").fancybox({ 
    beforeShow: function() { 
     return $.fancybox.wrap.bind("contextmenu", function(e) { 
     return false; 
     }); 
    } 
    }); 
}); 


<!-- HTML --> 
<a class="fancybox" href="/some/larger/image.jpg"> 
    <img src="/some/thumbnail/image.jpg" /> 
</a> 
+0

jsfiddle怎么样?另外,我没有在你的html中看到rel属性。 – Macsupport 2014-10-04 03:51:57

+1

@Macsupport:'rel'由脚本 – JFK 2014-10-04 07:16:05

+0

@Macsupport Hrm设置,我无法重现JSFiddle中的行为 - 复制了HTML并直接引用了js + css,它工作得很好。仍然不确定是什么导致了实际网站上的问题。 – 2014-10-04 13:01:14

回答

0

原来这是一个涡轮问题。我尝试了一些建议的事件监听器都无济于事:

$(document).on "ready page:load page:restore", -> 
    // Do fancybox 

而刚刚结束了在链接到使用的fancybox页面禁用turbolinks。不理想,但它解决了这个问题。