2

我想知道如何确定在 highstock 中选择了哪个 rangeSelector 按钮。

我的范围选择器按钮:

   buttons: [{
            type: 'month',
            count: 1,
            text: '1 MONTH',
        }, {
            type: 'month',
            count: 3,
            text: '3 MONTH'
        }, {
            type: 'month',
            count: 6,
            text: '6 MONTH'
        }, {
            type: 'ytd',
            text: 'YTD'
        }, {
            type: 'year',
            count: 1,
            text: '1 YEAR'
        }, {
            type: 'all',
            text: 'ALL'
        }],

例如我点击我的第一个 rangeSelector 是 1 个月。我想知道这个按钮是否被选中。

有什么活动吗?

谢谢

4

2 回答 2

6

您可以捕获 setExtremes() ( http://api.highcharts.com/highstock#xAxis.events.setExtremes ),然后在事件对象中,您可以访问带有计数、文本和类型属性的 event.rangeSelectorButton 对象。

 xAxis: {
        events: {
            setExtremes: function(e) {
                console.log(this);
                if(typeof(e.rangeSelectorButton)!== 'undefined')
                {
                  alert('count: '+e.rangeSelectorButton.count + 'text: ' +e.rangeSelectorButton.text + ' type:' + e.rangeSelectorButton.type);
                }
            }
        }
    },

http://jsfiddle.net/E6GHC/1/

于 2013-04-08T10:46:48.457 回答
-1

您可以直接从rangeSelector.

例如:

var chart = $('#container').highcharts();

var selected = chart.rangeSelector.selected; // Index of selected button
var text = chart.rangeSelector.buttonOptions[selected].text; // Text of selected button
var type = chart.rangeSelector.buttonOptions[selected].type; // Type of selected button

和其他一些随机信息buttonOptions,使用选定buttonsrangeSelector索引。

请参阅此 JSFiddle 演示以查看它的实际效果。

于 2014-08-22T04:07:29.837 回答