Raphael.js如何找到点击路径的笔画?

时间:2013-05-12 13:23:38

标签: javascript svg click raphael

如何找到Raphael.js(当用户点击SVG路径时)点击是在笔画上?

这是路径:

var polycoords = [['M',10,10],['L',30,10],['L',35,50],['L',5,45],['Z]];
var poly = paper.path(polycoords).attr({'stroke':'#00f','stroke-width':5});
poly.click(function(e) {
    // I think here can I find it somehow...
});

1 个答案:

答案 0 :(得分:0)

就你的道路而言,它关闭但没有填充颜色或图案,只有笔画是可点击的,所以问题似乎解决了。

如果在某些未粘贴的代码行中,您实际填充此路径,那么内部也是可单击的,并且提供给单击回调的事件参数没有区别。

两种方式:

  1. 将笔划和内部作为两个不同的路径(一个填充且没有笔划,另一个未填充但具有笔划)并附加单独的单击处理程序

  2. 单击
  3. ,创建围绕您单击的像素的临时路径(其坐标位于事件参数中),并使用Raphael.pathIntersection(path1, path2)RaphaelJS documentation: pathIntersection)<搜索现有路径的交叉点/ p>