我有 50 个不同的系列,所以默认情况下,我将它们隐藏起来,所以用户只需点击他想看的系列。
有时,一个人想要快速显示所有内容或隐藏所有内容。我不知道如何打开/关闭所有开关。这可能吗?我认为是这样,但无法找到一种方法来做到这一点。
我有 50 个不同的系列,所以默认情况下,我将它们隐藏起来,所以用户只需点击他想看的系列。
有时,一个人想要快速显示所有内容或隐藏所有内容。我不知道如何打开/关闭所有开关。这可能吗?我认为是这样,但无法找到一种方法来做到这一点。
隐藏每个系列使用series.setVisible(false, false)
,参考。- 毕竟所有系列将被隐藏调用chart.redraw()
重绘图表一次。
此解决方案基于http://jsfiddle.net/pGuEv/
var chart = $('#chart-container').highcharts();
var $hide_show_all_button = $('#hide_show_all_series_button');
$hide_show_all_button.click(function() {
var series = chart.series[0];
if (series.visible) {
$(chart.series).each(function(){
this.setVisible(false, false);
});
chart.redraw();
$hide_show_all_button.html('show all');
} else {
$(chart.series).each(function(){
this.setVisible(true, false);
});
chart.redraw();
$hide_show_all_button.html('hide all');
}
});