2

highstock でどの rangeSelector ボタンが選択されているかを判断する方法を知りたいです。

私の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'
        }],

たとえば、1 MONTH である最初の rangeSelector をクリックします。このボタンが選択されているかどうかを知りたいです。

何かイベントはありますか?

ありがとう

4

2 に答える 2

6

setExtremes() ( http://api.highcharts.com/highstock#xAxis.events.setExtremes ) をキャッチすると、イベント obejct で、count、text、および type プロパティを持つ 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およびbuttons下にあるその他のランダムな情報。rangeSelector

この JSFiddle デモンストレーションを参照して、実際の動作を確認してください。

于 2014-08-22T04:07:29.837 に答える