jquery gallery不会加载灯箱

时间:2015-02-10 13:08:42

标签: javascript jquery html lightbox

我在我的网站上使用VisualLightBox图库:http://www.kamenarstvo-kliestik.sk/en/portfolio.htm但是当你打开例如厨房投资组合及其直接打开的图片,而非灯箱。但是当您刷新Kitchen组合页面或打开此链接http://www.kamenarstvo-kliestik.sk/en/portfolio/kitchen.htm时,图像将被正确打开。脚本也是正确的。

这是我的portfolio.htm来源http://pastebin.com/wNNPw820 这是我的投资组合/ kitchen.htm来源http://pastebin.com/Eyz086dt

2 个答案:

答案 0 :(得分:1)

似乎,就像VisualLightBox在页面加载时被初始化一样。您的链接是AJAX请求,因此在加载类别数据后上载DOM内容。 VisualLightBox不知道已加载的新元素,因此它不适用于它们。在类别数据请求完成后,您应该再次运行VisualLightBox:

jQuery(document).ready(function(){ window.Lightbox = new jQuery().visualLightbox({borderSize:10,classNames:'vlightbox1',descSliding:true,enableRightClick:true,enableSlideshow:false,prefix:'vlb1',resizeSpeed:9,slideTime:8,startZoom:true}) });

或者将当前的vlbdata1.js脚本修改为:

// function to load the lightbox
function init_visuallightbox() {
  window.Lightbox = new jQuery().visualLightbox({ borderSize:10, classNames:'vlightbox1', descSliding:true, enableRightClick:true, enableSlideshow:false, prefix:'vlb1', resizeSpeed:9, slideTime:8, startZoom:true})
}

// tells browser to load lightbox on page change or load
jQuery(document).on('ready page:change', function() { 
  init_visuallightbox();
});

// tells browser to load lightbox after all ajax requests
$( document ).ajaxComplete(function( event, xhr, settings ) {
  init_visuallightbox();
});

答案 1 :(得分:0)

在以前预先加载图像时看起来很有效。

尝试预加载,然后使用插件js。