在Raphael路径中添加填充/边界以便在鼠标悬停事件中宽大处理

时间:2012-09-06 19:18:50

标签: raphael

考虑使用Raphael绘制的路径(这是一条线),其中鼠标悬停事件将光标设置为悬停。对于细路径/线路,很难将鼠标悬停在该路径上。

有没有办法在路径上添加不可见的边框/填充/边界,以便更容易将鼠标悬停在路径上?

1 个答案:

答案 0 :(得分:3)

实现这一目标的一个非常简单的方法如下:

  1. 使用element复制您用作悬停触发器的路径。clone
  2. 使用elementinsertAfter
  3. 将克隆移到当前路径的前面
  4. 使用elementattr将克隆的不透明度设置为略高于0,这样它实际上是不可见的,但仍会接收点击事件,并且笔画宽度属性等于原始路径的笔画宽度+你想要的余量;
  5. 将悬停事件添加到克隆元素。
  6. 这将为您提供一条比原件更厚的不可见路径,它能够接收鼠标事件来代替原始的更薄路径。

    我嘲笑了这个here,并设置了一个游标属性,这样当鼠标位于代理路径上时你就会看到十字准线。