双击运行函数使用Flot.js

时间:2014-12-24 05:03:49

标签: javascript flot

当使用flot鼠标时双击鼠标时如何运行功能?如果我执行以下操作,则仅捕获单击。

$(graph).bind('plotclick', function(event, pos, item) {
    if (item) {
      ....
      item.series.data[0][2].key
    }
}

如果我使用dblclick我只有事件而且不再有项目。

$(graph).bind('dblclick', function(event) {
      ....
}

如何使用flot双击?我需要获取双击的条形图名称。

编辑:请点击此处查看小提琴http://jsfiddle.net/hcszv7wb/1/

编辑2:此post通过将项目分配给plothover中的变量来帮助获取条形图详细信息。我只需要弄清楚如何让plotclick和dblclick一起工作。 http://jsfiddle.net/hcszv7wb/2/

1 个答案:

答案 0 :(得分:1)

使用https://stackoverflow.com/a/7845282/1000011

我决定http://jsfiddle.net/hcszv7wb/3/

var DELAY = 200;
var clicks = 0;
var timer = null;

 $("#placeholder").bind("plotclick", function (event, pos, item) {       
     if (item) {
       clicks++;  //count clicks
       if(clicks === 1) {
           timer = setTimeout(function() {
               //perform single-click action
               alert("item " + item.dataIndex + " in " + item.series + " clicked");
               chart.highlight(item.series, item.datapoint);
               clicks = 0;  //after action performed, reset counter
           }, DELAY);

       } else {
           clearTimeout(timer);  //prevent single-click action
           //perform double-click action
           alert('Double Click');  
           clicks = 0;  //after action performed, reset counter
       }      

     }
 });