2013-04-09 32 views
0

我有一个页面有很多画廊(使用环球免税店加fancybox)和顶部(nivo滑块)上的图像滑块。 问题是滑块花费时间加载,导致浏览器正在加载画廊。 现在我想给滑块一个优先级,所以页面至少会创建它的结构,或者可能让画廊仅在点击时加载。页面加载和优先

<script type="text/javascript"><!--fancybox--> 
    $(document).ready(function() { 
     $(".fancybox").fancybox(); 
    }); 
</script> 

<script type='text/javascript'> 
      Galleria.loadTheme('galleria/themes/classic/galleria.classic.min.js'); 
      Galleria.run('#gallery-1,#gallery-2,#gallery-3,#gallery-4,#gallery-5,#gallery-6,#gallery-7,#gallery-8,#gallery-9,#gallery-10,#gallery-11,#gallery-12,#gallery-1b,#gallery-2b,#gallery-3b,#gallery-4b'); 
</script> 

回答

0

而不是使用document.ready(),它加载在HTML已经加载,你可以尝试使用window.onload,其页面上所有的元素都被加载后发生的。

$(window).on("load", function(){ 
    $(".fancybox").fancybox(); 
}); 

然后,如果要加载上的click事件的画廊:

$('relevantIDHere').on('click', function(){ 
    Galleria.loadTheme('galleria/themes/classic/galleria.classic.min.js'); 
    Galleria.run('#gallery-1,#gallery-2,#gallery-3,#gallery-4,#gallery-5,#gallery-6,#gallery-7,#gallery-8,#gallery-9,#gallery-10,#gallery-11,#gallery-12,#gallery-1b,#gallery-2b,#gallery-3b,#gallery-4b'); 
}); 
+0

谢谢,我会尝试这一个 – mannygtr 2013-04-09 11:58:49

+0

但是,如果我想的画廊被加载只是在点击什么? – mannygtr 2013-04-09 12:03:41

+0

@mannygtr我编辑了它。将相关ID替换为任何您希望导致画廊在点击时加载的ID – lifetimes 2013-04-09 12:05:35