我正在使用raphael.js构建一些svg动画。我正在尝试建立一个饼图。我通过.animate()方法在一个步骤选项中调用一个函数。
我得到的错误:未捕获TypeError:对象不是函数 这一行是什么:pie_fill.attrs({'path':arc(1,2,3,4)});
它甚至不将arc()理解为步骤选项中的函数。但是我不知道为什么,请帮忙。
var R = Raphael("paper");
pie_fill = R.path(("M 150 77 L77 77 Z")).attr({'fill':'#009bca', 'stroke':'#1c1c1c', 'stroke-opacity':'1', 'stroke-width':'1'});
var pie = new Raphael($('#paper'), 300, 154);
$('#paper').animate({
'margin': '0'
}, {
'duration': 1500,
step: function( now, fx ) {
pie_fill.attr({'path': arc(1, 2, 3, 4)});
}
});
arc =function(center, radius, startAngle, endAngle) {
console.log('ran')
};
答案 0 :(得分:2)
arc在调用后定义。
如果你写function arc(...)
而不是arc = function(...)
,它应该有用。