将鼠标悬停在区域中作为html中的多边形

时间:2014-02-25 21:29:04

标签: javascript svg raphael

我需要有一个区域,我会将鼠标放在事件上。我怎么能用JavaScript做到这一点?

这个区域应该是

  • 易于定义
  • 不可见(我需要背景可见)。

1 个答案:

答案 0 :(得分:0)

要使svg形状(多边形,矩形,圆形,路径)不可见,fill属性设置为“none”。并使其仍然响应事件,你包括指针事件=“可见”。然后在形状中包含鼠标悬停事件。注意: evt 是svg事件对象调用。函数本身也可以应用于它所附加的元素(目标)之外。例如,该函数可以在svg根中的任何位置绘制一个圆。

e.g。

<svg id="mySVG" width="400" height="400">
<rect id="myRect" x="0" y="0" width="100%" height="100%" pointer-events="visible"  fill="none" onmouseover="myEvent(evt)" />
</svg>

<script>
    function myEvent(evt)
    {
       var target=evt.target
       target.setAttribute("fill","red")
    }
</script>