0

イベントはmouse hover発生しません。私はそれを理解することができませんでした

function createChart() {
    $("#chart")
        .kendoChart({
            xAxis: {},
            yAxis: {},
            seriesDefaults: {type: "scatterLine" },
            series: [{data: stats2}],
  })
}

// the following part does not fire up
var isHover = false;
$("#chart").hover(
function () {
    if (!isHover) {
        var chart = $("#chart").data().kendoChart;
        chart.options.series.data=stats2;
        isHover = true;
    }
}, function () {
    if (isHover) {
        var chart = $("#chart").data().kendoChart;
        chart.options.series.data=stats;
        isHover = false;
    }
});

http://jsfiddle.net/epvg86qu/7/

4

1 に答える 1

3

時々デバッグすることを学ぶ必要があります。ホバー機能がトリガーされなかったのではなく、不用意にコードを書いただけです。

seriesチャートのオプションのプロパティはarray. したがって、アクセスするにはインデックスが必要です。また、データではなく系列を変更するつもりであるため、系列redrawデータを変更した直後にメソッドを呼び出す必要があります。

このコードは機能します

var isHover = false;
$("#chart").hover(
    function () {
    if (!isHover) {
        var chart = $("#chart").data().kendoChart;
        chart.options.series[0].data = stats2;
        chart.redraw();
        isHover = true;
    }
}, function () {
    if (isHover) {
        var chart = $("#chart").data().kendoChart;
        chart.options.series[0].data = stats;
        chart.redraw();
        isHover = false;
    }
});

良い一日を、乾杯!!

于 2015-05-11T16:23:54.470 に答える