2017-10-12 7 views
0

Chart.jsを使用している私のチャートでは、chartjs-plugin-annotationで作成された注釈があります。私は、注釈ラベルをその行にカーソルを置いて見えるようにしたいと思います。しかし、私はそれを働かせることはできません。私は次のコードを持っている:(コンソールのテストに表示)が、チャート、およびビジュアル「有効」注釈イベントはグラフを更新しません

//define ChartOneData 
var ctx = document.getElementById("chart").getContext("2d"); 

var chartOne = new Chart(ctx, { 
    type: 'line', 
    data: chartOneData, 
    options: { 
     annotation: { 
      events: ["mouseenter", "mouseleave"], 
      annotations: [{ 
       type: 'line', 
       mode: 'vertical', 
       scaleID: 'x-axis-0', 
       value: 1, 
       label: { 
        enabled: false, 
        content: "Text Label", 
       }, 
       onMouseenter: function(e) { 
        var element = this; 
        element.options.label.enabled = true; 
        element.chartInstance.update(); 
       }, 
       onMouseleave: function(e) { 
        var element = this; 
        element.options.label.enabled = false; 
        element.chartInstance.update(); 
       }] 
      } 
     } 
    } 
} 

イベント火災をして属性を変更、更新されません。実際に 私はコンソールにエラーが表示されます。

Unable to preventDefault inside passive event listener invocation. 
dispatcher @ chartjs-plugin-annotation.js:261 

誰でも助けることができる私は、このことを理解していませんか?

答えて

0

これは、これが根底にあるplugingの問題であることが判明しました。コードは正しく、chart.jsバージョン2.5と2.6で動作しましたが、2.7では動作しませんでした。チャートアノテーションgithubリポジトリに問題が追加されました。

ソリューションは2.6にダウングレードされ、次のバージョンのcharts.jsで修正待ちです

関連する問題