Я использую Plotly, пишу веб-страницу. Проблема в том, что когда я использую событие Plotly_onclick
, кажется, что-то не так. В частности, когда я нажимаю мышью, он не реагирует. Когда я нажимаю сенсорную панель своего ноутбука, то есть я нажимаю тачпад, он тоже не реагирует. Только когда я сильно касаюсь сенсорной панели, она реагирует. Я не могу справиться с этим. Кто-нибудь знает, как это исправить?Plotly.js Click event
Код события щелчка здесь:
.on('plotly_click', function (event, eventdata) {
var point = eventdata.points[0];
var traceColor = point.fullData.marker.color,
newAnnotation = {
x: point.xaxis.d2l(point.x),
y: point.yaxis.d2l(point.y),
ax: 0,
ay: -50,
arrowhead: 6,
bgcolor: 'rgba(255,255,255,0.75)',
arrowcolor: traceColor,
font: {color: traceColor},
text: point.data.name + ':' + point.y + 'on ' + point.x
},
newIndex = (rangePlot.layout.annotations || []).length;
console.log(newIndex);
var TextFromUser = {name: point.data.name, time: point.x, value: point.y};
if(TextFromUser['time'].length==10)
{
TextFromUser['time']=TextFromUser['time']+' 00:00';
}
else if(TextFromUser['time'].length==13)
{
TextFromUser['time']=TextFromUser['time']+':00';
}
else;
if (newIndex) {
var foundCopy = false;
rangePlot.layout.annotations.forEach(function (ann, sameIndex) {
if (ann.text === newAnnotation.text) {
Plotly.relayout(rangePlot, 'annotations[' + sameIndex + ']', 'remove');
foundCopy = true;
}
});
if (foundCopy) return;
}
Plotly.relayout(rangePlot, 'annotations[' + newIndex + ']', newAnnotation);
})