2011-07-12 55 views
1

我有一個畫廊在div最初設置爲無顯示,這是因爲我有5這些畫廊在同一頁上,只希望一個顯示在任何一次。現在,每當我點擊鏈接,以顯示我得到一個致命錯誤的畫廊之一:包含廣場畫廊在div集顯示沒有

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

反正是有解決此問題?我的JavaScript知識不是很好,但任何幫助將不勝感激。

謝謝。

Joni

回答

0

我會在獲取高度後使用javascript隱藏元素。問題是它無法獲得一個元素的高度,它的結構就像是一個無形的鬼魂。

另外我想你可以做的最簡單的事情就是修正你的網站是增加一個rel標籤到鏈接相關的鏈接,如rel="graphic"rel="packaging"爲每個div添加一個類似的標籤。

使用它來切換不同的畫廊。你也只針對一個畫廊與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(); 
}); 

我知道我說的大部分內容與您的原始問題不太相關,但我會從這裏開始解決您最初的問題。 注:我沒有碰上你上面

+0

感謝您的幫助,但不幸的是我已經在使用javascript隱藏div,以便那些不使用js的用戶仍然可以看到所有內容。任何其他想法? :( – Joni

+0

@Joni在jsFiddle上發佈你的代碼,以便我可以得到一個更好的主意。 – brenjt

+0

在這裏你去,http://jsfiddle.net/jonigale/G9wav/1/ - 感謝您的幫助!真正努力與此! – Joni

1

描述了同樣的錯誤這是功能

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

您可能能夠重新調用

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

但也許使用唯一的ID,所以你'不要做不需要的工作

2

您需要在顯示圖庫容器的任何事件上初始化圖庫實例。

我一直在遇到同樣的問題 - 我的圖庫在我的頁面上默認隱藏(顯示爲無),只有當您點擊鏈接「查看圖庫」時纔會出現。使用jQuery slideDown(將display屬性設置爲block),只有這樣我才能調用initialize。

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