javascript - 无法更改 Raphael 中的填充颜色?

标签 javascript raphael

我正在尝试将圆圈颜色从绿色更改为红色,但我不能在这里。经过长时间的研究,我发现一个问题,那就是当我在 Raphael 中使用类时,我无法更改颜色。 我需要使用该类来更改圆圈的颜色。

var paper = new Raphael('myPaper',500,500);

var SCircle = paper.circle(300,100,50).data('id','green');
SCircle.node.setAttribute('class','green'); 

$("#test").click(function () {   
    SCircle.animate({fill:'pink'},200); //color is not filling
} )

这是JSFiddle Link

任何建议都应该受到赞赏..

最佳答案

问题似乎是 css 优先级。在 animate 调用期间,css 类优先于填充。阅读此SO post更多讨论建议不要使用 CSS 样式来设计 Raphael 对象的样式。

无需 CSS 即可显式应用属性。

var paper = new Raphael('myPaper',500,500);    
var SCircle = paper.circle(300,100,50); 
SCircle.node.setAttribute('fill','green');
SCircle.node.setAttribute('stroke','black');
SCircle.node.setAttribute('stroke-width','3');

$("#test").click(function() {   
    SCircle.animate({'fill':'pink'},200);
}); 

关于javascript - 无法更改 Raphael 中的填充颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17312772/

相关文章:

javascript - <strong>、<cite>、<article> 等的 HTMLElement 类型

javascript - 有没有办法动态禁用 Angular 多选(cuppa labs)

javascript - 为什么 RaphaelJS 中的这个事件处理程序会立即运行?

javascript - 更改拉斐尔 "Label"的背景颜色

javascript - 预绘制 Raphael 屏幕,将其保存到文件并在运行时加载

javascript - React Native FlatList组件数据在firebase数据调用后不断刷新,无法一致显示Firebase数据

javascript - 如何检查对象是否不具有函数参数中提到的属性?

javascript - 在 JavaScript 中为数组添加空格

Javascript console.log 过早加载

javascript - Raphaeljs 子字符串文本属性