0

我对 Raphael 很陌生,在它的文档中也很迷失......

我想通过 jQuery 操作一个 Raphael 对象:

$(".handle").hover(
               function() {
                     $("path[rel='"+$(this).attr('rel')+"']").addClass("pathhover");
               }, 
               function() {
                    $("path").removeClass("pathhover");
               }
            );

Path 是 Raphael 生成的路径,jQuery 似乎无法选择这个 svg 标签。

你知道如何实现这一目标吗?

谢谢 ;)

4

1 回答 1

0

这是一个解决方案,感谢jacktheripper的帮助。

拉斐尔对象不能被jQuery直接操作;我们需要使用它对 DOM 的引用(它的node)。

因此,jQuery 处理程序需要 Raphael 对象名称。在此示例中,我使用 rel 标签来存储 raphael 对象的名称。

$(".handle").hover(
               function() {
                     var path=eval($(this).attr('rel'));
                     path.node.setAttribute("class","pathhover");
               }, 
               function() {
                    var path=eval($(this).attr('rel'));
                    path.node.removeAttribute("class","pathhover");
               }
            );
于 2012-09-09T15:12:10.770 回答