Double Click Event Handler 2 - CanvasJS Javascript Charts

Double Click Event Handler 2 - CanvasJS Javascript Charts

by canvasjs

HTML

<script src="https://canvasjs.com/assets/script/canvasjs.min.js"></script>
<br/>
<!-- Just so that JSFiddle's Result label doesn't overlap the Chart -->
<div id="chartContainer" style="height: 360px; width: 100%;"></div>

JavaScript

var chart = new CanvasJS.Chart("chartContainer", {
    title: {
        text: "DataSeries attached to Double Click events."
    },
    data: [{
        doubleClick: doubleClickHandler,
		
        indexLabelOrientation: "vertical",
        type: "column",
		 dataPoints: [        
        { x: 10, y: 71},
        { x: 20, y: 55},
        { x: 30, y: 50 },
        { x: 40, y: 65 },
        { x: 50, y: 95 },
        { x: 60, y: 68 },
        { x: 70, y: 28 },
        { x: 80, y: 34 },
        { x: 90, y: 14}
        ]
    },

    ]
});

trackDoubleClick();
chart.render();

function doubleClickHandler(e){
	alert("double click");
}


// Logic to detect double click
var timeOne = null;
var clickedDataPoint = null;

function trackDoubleClick(){
	var detector = function(e) {
      if (!timeOne) {
          timeOne = new Date().getTime();
          clickedDataPoint = e.dataPoint.x;
      } else {
          if (new Date().getTime() - timeOne < 500 && clickedDataPoint === e.dataPoint.x){ 
              // your code for double click goes here....
              //alert("double click");
              if(e.dataSeries.doubleClick)
              	e.dataSeries.doubleClick(e);
          }
          timeOne = null;
          clickedDataPoint = null;
      }
  }
  
  for(var i = 0; i < chart.options.data.length; i++){
  	chart.options.data[i].click = detector;
  }
}