Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/387.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/joomla/2.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如何设置路径的属性?_Javascript_Raphael - Fatal编程技术网

Javascript Raphael.js如何设置路径的属性?

Javascript Raphael.js如何设置路径的属性?,javascript,raphael,Javascript,Raphael,在Raphael.js中,如果我有一个path对象,我想重置属性,怎么做 myPath.attr('M', VALUE_FOR_M) .attr('L', VALUE_FOR_L); 似乎不起作用…要创建路径,我更喜欢 var myPath = paper.path(['M', M_VAL0, M_VAL1, 'L', L_VAL0, L_VAL1].join(' ')); myPath.insertAfter(nodewhate

在Raphael.js中,如果我有一个path对象,我想重置属性,怎么做

myPath.attr('M', VALUE_FOR_M)
      .attr('L', VALUE_FOR_L);

似乎不起作用…

要创建路径,我更喜欢

var myPath = paper.path(['M', M_VAL0, M_VAL1, 
                         'L', L_VAL0, L_VAL1].join(' '));
myPath.insertAfter(nodewhatever);
它使你的行动更容易遵循

要更新您的路径

myPath.remove();
myPath = paper.path(['M', M_VAL2, M_VAL3, 
                     'L', L_VAL2, L_VAL3].join(' '));
myPath.insertAfter(nodewhatever);
这就是你想做的吗?

你是这样做的:

var newPath = ["M", VALUE_FOR_M_X, VALUE_FOR_M_Y, 
               "L", VALUE_FOR_L_X, VALUE_FOR_L_Y];

myPath.attr({ path : newPath });

newPath是一个路径字符串(请参见)

@Joachim,为什么我不这么认为????我当然知道拉斐尔不是jQuery。Raphael还提供attr()方法来设置元素的属性。如果你查看拉斐尔官方网站上的文件。但是,阅读链接的文档表明,
M
L
未列在可能的参数中。是的,这就是为什么我在这里问如何设置路径属性,因为没有相关的参考。据我所知,
M
L
不是路径的属性,它们只是可以存在于其规范中的元素。它们也可以存在多次,所以“改变它们的价值”并没有多大意义。你能举一个你想要实现的例子吗?这似乎是一个更好的解决方案,你不会丢失创建路径时保存到路径上的任何其他属性。你真的能像那样使用数组吗?或者你必须
.join(“”)
它才能生成一个字符串吗?@TimErickson两者都被铸造成一个字符串。区别只是隐式转换将导致逗号分隔的值字符串,而您的解决方案将导致空格分隔的值字符串。“M,1,1,L,1,1”与“M 1,1”