报告SVG中左键单击(并保持)鼠标的坐标

时间:2013-04-11 14:54:44

标签: javascript jquery svg

首先,我甚至不知道我尝试做的事情是否可能,所以请原谅我。

我创建了一个程序,允许在SVG中显示图形。作为其中的一部分,我希望用户能够用鼠标绘制笔记。

如果按住鼠标左键,是否有办法使用javascript(或jQuery)捕获鼠标坐标?我正在努力解决的问题是如何捕捉一系列位置以产​​生路径。据我所知,如果位置发生变化,我需要在设定的时间步长处获取坐标(下面的psudo代码)。

if (leftClicked)
{
   var positionArray[];
   var MC = getMouseCoordinates();
   positionArray[0] = MC;
   var i = 1;
   while(leftClicked)
   {
      if getMouseCoordinates() != MC
      {
         MC = getMouseCoordinates();
         positionArray[i] = MC;
      }
      i++;
   }
}

但是,尽管阅读了几个小时,我仍无法找到在JavaScript中实现此功能的方法。

此外,我的SVG嵌入在HTML页面中。我不知道如何将坐标报告本地化到该SVG而不是整个页面?

很抱歉,我知道这是一个非常模糊的问题,但我甚至不知道从哪个开始......

1 个答案:

答案 0 :(得分:0)

你应该反过来做,而不是按下按钮,然后尝试跟踪鼠标,跟踪鼠标并检查鼠标是否按下按钮。 即附加mousemove事件处理程序并检查button = 0

example跟踪鼠标移动事件,虽然它不检查按下的按钮,但您必须使用from here

信息自行添加