2012-03-23 184 views
0

我有类似的图,以g.rapahel http://raphaeljs.com/graffle.html,我存储在数组中的形状像下面的代码平滑滚动效果形状

var shapes = new Array(); 
var kx=50,ky=150; 
var RecWidth=120; 
var RecHeight=85; 
var RecRadius=10; 

r = Raphael(10,10, '60%', '100%'); 

for (var i=0; i<= 50; i++) { 

shapes[i]=r.rect(kx, ky, RecWidth, RecHeight,RecRadius); 

shapes[i].id="keylist"+i ; 

kx=kx+50; 

ky=ky+100; 

} 

现在假设,我想[1]连同移动形状窗口滚动与连接线显示在graffle(上面的链接).intention是形状[1](为了简单起见,我选择了这个)应该总是在滚动框架。这个怎么做?。

回答

0

试试这个:

var originalTop = shape[1].getBBox().y; 
    $(window).scroll(function() { 
     var dy = $(window).scrollTop(); 
     shape[1].animate({y: originalTop+y}, 300); 
    }); 
+0

由于它的工作。但我的形状也有4种不同的拉斐尔文字。我试图通过将这些文本和形状放置在Raphael set.it中来尝试滚动这些文本,但它的动画却是相互重叠的。有没有什么办法可以用“set”来实现呢,还是有其他方法可以做到这一点?另外在这种情况下如何动画连线(如上面的gRaphael链接所示)。我也希望线条也应该与形状和文字一起出现。 – JDev 2012-03-23 17:52:41

+0

感谢迭戈为基地。我也可以使它与“set”一起工作。 – JDev 2012-03-28 23:47:47