Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Raphael.js 2.0动画翻译是否存在变量不一致?(noob)_Javascript_Animation_Raphael - Fatal编程技术网

Javascript Raphael.js 2.0动画翻译是否存在变量不一致?(noob)

Javascript Raphael.js 2.0动画翻译是否存在变量不一致?(noob),javascript,animation,raphael,Javascript,Animation,Raphael,我试着遵循本教程,但它并不完全适用于Raphael2.0。我在大部分地方都做过,但在第8步我就迷路了 我所要做的就是用一些可变值设置一些圆的动画… 我的问题基本上是: paper.rect(250,250,20,20).animate({transform: "t0,100"}, 2000); //works paper.circle(250,250,20).animate({transform: "t0,100"}, 2000); //works paper.rect(250,250,20,

我试着遵循本教程,但它并不完全适用于Raphael2.0。我在大部分地方都做过,但在第8步我就迷路了

我所要做的就是用一些可变值设置一些圆的动画…
我的问题基本上是:

paper.rect(250,250,20,20).animate({transform: "t0,100"}, 2000); //works
paper.circle(250,250,20).animate({transform: "t0,100"}, 2000); //works

paper.rect(250,250,20,20).animate({x:250,y:250+100}, 2000); //works
paper.circle(250,250,20).animate({x:250,y:250+100}, 2000); // doesn't work
paper.circle(250,250,20).animate({x:250,y:350}, 2000);    // doesn't work either

var someTrans = 100;

paper.rect(250,250,20,20).animate({transform: "t0,someTrans"}, 2000); //doesn't work
paper.circle(250,250,20).animate({transform: "t0,someTrans"}, 2000); //doesn't work

paper.rect(250,250,20,20).animate({x:250,y:250+someTrans}, 2000); //works
paper.circle(250,250,20).animate({x:250,y:250+someTrans}, 2000); // doesn't work
有人能给我一个正确的方向吗?
自从拉斐尔改变了它从一个版本到另一个版本的转换行为,我自己很难找到它…--

(我真的不明白为什么circle和rect的行为如此不同……对我来说没有多大意义……=/

我正在使用Opera 11.52,以防有什么不同…?)

变量不会自动替换。您需要连接字符串和数字,如下所示:

paper.rect(250,250,20,20).animate({transform: "t0," + someTrans}, 2000); //doesn't work
paper.circle(250,250,20).animate({transform: "t0," + someTrans}, 2000); //doesn't work
对于圆:你必须指定所有的三个属性x,y和r,然后动画工作。尝试:

paper.circle(50,50,40).animate({cx:100,cy:100,r:100},1000)