剑道中没有事件发生

时间:2015-05-11 15:51:00

标签: javascript kendo-ui kendo-chart

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/

1 个答案:

答案 0 :(得分: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;
    }
});

祝你有个美好的一天,欢呼!!