2012-12-18 74 views
3

我一直試圖在我的網站中使用dygraph(http://dygraphs.com/)進行可視化,並且它可以很好地處理所有功能。我試圖建立的網站是一個動態的網站,起初我試圖將其打印在可見的div元素上,這很好..然後我嘗試引入一個div元素,它可以在點擊時展開和摺疊。所以,如果我試圖打印圖形與div崩潰了,它不會工作,只有當它展開,圖形被印刷..我加入的jsfiddle鏈接顯示我的問題..dygraph不打印隱藏div元素中的數據

http://jsfiddle.net/dTUQC/2/

這個問題可能是什麼原因?

$("#chartdiv").css({"height":"160px"}); 
g = new Dygraph(document.getElementById("chartdiv"), input, { 
    width : 500, 
    includeZero : true, 
    animatedZooms : true, 
    drawXGrid : false, 
    plotter : barChartPlotter 
}); 
} 

回答

3

背後的原因是,因爲你使用的是slideToggle()功能,顯示屬性被保存,並根據需要恢復。當關閉時div chartdiv的樣式爲display : none ...條形圖無法在該dom元素中進行渲染。當它打開時,樣式會更改爲display:block,所以這次圖表會找到div chartdiv

這裏是小提琴..

http://jsfiddle.net/dTUQC/3/

檢查控制檯..在那裏我有顯示的風格。如果我改變div chartdivdisplay:block ..圖是WHN股利甚至呈現在閉合狀態..

修訂

或使用.show() ..

http://jsfiddle.net/dTUQC/9/一個按鈕

+0

BT打印按鈕,打開div..Im試着做它的其他方式。當我們點擊drawgraph應該打印圖形,BT單擊打開按鈕,只有當,它應該顯示他的圖..這種方式nt工作.. – user1371896

+0

我想顯示圖形只有當用戶想要查看它..所以我使用.show()jquery功能 – user1371896

+0

好吧我是絕對給你的原因爲什麼發生......因爲你的問題是'這可能是什麼原因這個問題???'......你可以顯示圖表,當用戶單擊按鈕..而不是使用兩個按鈕....我認爲 – bipen