当mouseover和mouseout事件触发时,我正在尝试访问和更新Raphael画布中某个元素的某些属性。
由于文档很少,我一直在努力解决这个问题。
以下代码失败,错误为 Object #<SVGCircleElement> has no method 'attr'
$(circle.node).mouseover(function (e) {
e.target.attr({ 'opacity': 0.2, 'fill': 'blue', 'stroke': 'white' });
});
这里提供了(非)功能代码:http://jsfiddle.net/agarcian/mDnAb/3/
非常感谢任何帮助。
答案 0 :(得分:4)
您需要使用$(e.target).attr(...)
,因为e.target
是一个普通的DOM元素,而不是jQuery包装。
通过此更改,它可以正常工作:http://jsfiddle.net/ThiefMaster/mDnAb/4/
顺便说一下,您可以使用.hover()
代替两个单独的活动:http://jsfiddle.net/ThiefMaster/mDnAb/5/