在div设置中包含Galleria Gallery以显示无

时间:2011-07-12 00:59:20

标签: jquery height width fatal-error galleria

我在div中有一个画廊,最初设置为不显示,这是因为我在同一页面上有5个这样的画廊,只想在任何时候显示一个。现在,每当我点击链接显示其中一个画廊时,我都会收到致命的错误:

Fatal error: Could not extract a stage height from the CSS. Traced height: 0px.

有没有解决这个问题?我的javascript知识不是很好,但是非常感谢任何帮助。

感谢。

乔尼

3 个答案:

答案 0 :(得分:2)

您需要在显示图库容器的任何事件中初始化图库实例。

我遇到了同样的问题 - 默认情况下,我的图库在我的网页上隐藏(无显示),只有在您点击“查看图库”链接时才会显示。使用jQuery slideDown(将display属性设置为block),然后才调用initialize。

$("#gallery-wrapper").galleria({ height: 500, width: 500 });

答案 1 :(得分:1)

这个功能

$(".portfolio-links a").click(function() {});

您可以重新拨打电话

$(".gallery").galleria({
    width: 605,
    height: 550,
    autoplay: 3000,
    transition: 'fadeslide'
});

但也许使用唯一的ID,这样你就不会做不必要的工作

答案 2 :(得分:0)

我会使用javascript来获取高度后隐藏元素。问题在于它无法获得display:none;元素的高度,它的结构就像鬼,无形。

此外,我认为您可以采取的最简单方法是修复与该链接相关的每个链接的rel标记,例如rel="graphic"rel="packaging"为每个链接添加类似的标记那个。

用它来切换不同的画廊。此外,您只使用jquery循环插件定位一个库,我建议:

$('.portfolio-body').cycle({
    fx: 'scrollLeft',
    speed:   2000, 
    timeout: 3000, 
    next:   '#catalogue-display'
});

这样它就针对所有人。此外,Galleria插件似乎至少在jsFiddle示例中不起作用。我认为它会与jQuery Cycle插件冲突。

我还会更改onClick处理程序以使用rel来知道要显示的库。并使用这样的东西隐藏剩下的东西。

$(".portfolio-links a").click(function() {
    $('.portfolio-body').hide();
    var rel = $(this).attr("rel");
    $('.portfolio-body[rel="'+rel+'"').show();
});

我知道我说的大部分内容与你原来的问题不太相关,但我会从这里开始,它可能会解决你的初始问题。 注意:我没有遇到您在上面描述的相同错误