禁用hightcharts js中的事件

时间:2016-08-08 16:09:21

标签: javascript jquery highcharts

我需要在高图表堆积区域图表中禁用图例上的事件。这是我的代码:

chart: {
      type: 'area',
    },
    point: {
      events: {
        legendItemClick: function () {
          return false; // <== returning false will cancel the default action
        },
      },
    },
    title: {
      text: title,
    },
    xAxis: {
      type: 'datetime',
      min: startDateInMS,
      max: endDateInMS,
    },
    yAxis: {
      title: {
        text: yLabel,
      },
    },
    series: data,
    plotOptions: {
      series: {
        stacking: 'normal',
      },
    },
    credits: {
      enabled: false,
    },
  };

根据文档似乎没问题,但您仍然可以在图例中单击以从图表中删除我不想要的项目。任何帮助都很可爱!!

2 个答案:

答案 0 :(得分:0)

您的问题来自于您将点击事件指定为点,但从图片的外观来看,您的图表是area,并且您将点击事件应用于错误的属性。

您将其置于lines之下,同时需要嵌套,例如 - plotOptions -> area -> events -> legendItemClick

相反,请确保您的事件嵌套如下:

chart: {
      type: 'area',
    },
    plotOptions: {
      area: {
        events: {
          legendItemClick: function () {
            return false; // <== returning false will cancel the default action
          }
        }
      }
    },
    title: {
      text: title,
    },
    xAxis: {
      type: 'datetime',
      min: startDateInMS,
      max: endDateInMS,
    },
    yAxis: {
      title: {
        text: yLabel,
      },
    },
    series: data,
    plotOptions: {
      series: {
        stacking: 'normal',
      },
    },
    credits: {
      enabled: false,
    },
};

答案 1 :(得分:-1)

得到它...我有另一个绘图选项进一步停机代码,而不是写这段代码:

chart: {
      type: 'area',
    },
    plotOptions: {
      series: {
        stacking: 'normal',
      },
      area: {
        events: {
          legendItemClick: function () {
            return false; // <== returning false will cancel the default action
          },
        },
      },
    },
    title: {
      text: title,
    },
    xAxis: {
      type: 'datetime',
      min: startDateInMS,
      max: endDateInMS,
    },
    yAxis: {
      title: {
        text: yLabel,
      },
    },
    series: data,
    credits: {
      enabled: false,
    },
  };

感谢您的帮助!!