检测点击位置

时间:2015-05-01 13:55:28

标签: javascript devextreme

DevExtreme图表中点击某个点时,我试图显示某些内容(最终是菜单)。为简单起见,我首先使用条形图。

我想要做的是,当用户点击某个栏以在该特定点显示DOM中的其他内容时。我试图设置它并且大部分都是这样,我得到的问题我不确定如何解决是关于坐标。

enter image description here

上面的示例显示了我点击的位置,以及我附加的红色圆圈,它显示在条形图的顶部。添加它的代码非常简单:

var clicked = function(p) {
 var element = p.element[0];
 var group = d3.select(element)
             .select("svg")
               .append("g")
               .attr("transform", "translate("+ [p.target.x, p.target.y] +")")
               .append("circle")
               .attr({ cx : 0, cy: 0, r: 10, class: "circle"});
};

只需获取目标点击元素的坐标即可。显然这似乎是顶角。有没有人能想到获得实际点击的位置?

我在这里举了一个示例小提琴:http://jsfiddle.net/IPWright83/ho2euurh/2/

1 个答案:

答案 0 :(得分:5)

Try this fiddle

  .attr("transform", "translate("+ [p.jQueryEvent.pageX, p.jQueryEvent.pageY] +")")

这为您提供了点击位置的坐标。