在 Raphael.js 中,如果我有一个路径对象,我想要重置属性,如何做到?
看起来好像不起作用...
myPath.attr('M', VALUE_FOR_M)
.attr('L', VALUE_FOR_L);
看起来好像不起作用...
myPath.attr('M', VALUE_FOR_M)
.attr('L', VALUE_FOR_L);
你可以这样做:
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是一个路径字符串(参见SVG路径字符串格式)
.join(' ')
将其转换为字符串? - Tim Erickson创建路径时,我更喜欢使用:
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);
这是你想要做的吗?
M
或L
不在可能的参数列表中。 - Joachim SauerM
和L
不是路径的属性,它们只是可以存在于其规范中的元素。它们也可以存在多次,因此“更改它们的值”并没有太多意义。您能发布一个您想要实现的示例吗? - Joachim Sauer