2012-03-09 37 views
1

我正在使用Raphael JS形狀的流程圖。這是動態的;即我不知道我將在拉斐爾js畫布上繪製多少個圖表。它可以有10拉斐爾形狀或可能有數百個,即它會垂直增長。需要在Raphael Canvas上滾動

我面臨着以下問題:

  1. 形狀走出去拉斐爾畫布。我想增加/減少Canvas的大小,具體取決於形狀的數量。
  2. 我想要一個拉斐爾帆布周圍的滾動框。我不想使用瀏覽器滾動,因爲我在同一頁面上還有其他內容,所以我只想滾動拉斐爾形狀的區域,而不是整個頁面。

是否可以實現這兩種效果?

+2

而問題是??? – freakish 2012-03-09 20:49:08

+0

@freakish。對此感到遺憾。更新了問題 – JDev 2012-03-09 21:06:54

回答

1

我收集你的問題,你想知道如何把很多東西(或一個大的東西)放入<div>,並有滾動條。要做到這一點,你只需要CSS的一行在該分區:

overflow-y: auto; 

下面是一個例子:http://jsfiddle.net/yJGGE/

在你的情況,正好被設置爲任何你想要的最大尺寸,以「滾動框」的大小是,並把你的圖形裏面。如果圖形溢出滾動框的高度,則會出現滾動條。

希望可以幫到

+0

感謝您的快速響應。另一個問題是形狀從畫布中走出。如何調整畫布的大小取決於形狀的數量。我無法硬編碼畫布大小,因爲數字形狀是動態的。 – JDev 2012-03-09 21:43:41

+0

爲了獲得Raphael形狀的卷軸,我將Raphael畫布放在DIV元素中,並保持Div小於畫布的大小,然後使用Raphael js setSize函數來調整畫布大小並獲取形狀卷軸。由於我有固定的高度和寬度的形狀,我可以計算畫布的高度和寬度取決於我繪製的形狀的數量.. – JDev 2012-03-23 00:11:35