1

問題または質問があります。(私の英語で申し訳ありません、私はフランス語です)。

私は Hightcharts を使用して 1 ページに多くのグラフ (~55 グラフ) を表示し、作成に多くの時間を費やしています。そのため、チャートを保持したいのですが、ページを変更した後にチャートを再作成して後で再表示したくありません。必要なものをシミュレートするために jsfiddle.example を作成します。http://jsfiddle.net/huhWj/2/

シンプルな html ページ

<div id="container" style="height: 400px"></div>
<button id="button">Set new data</button>
<button id="buttonGet">Get container</button>
<button id="buttonSet">Set container</button>
<button id="Empty">Empty container</button>

JavaScript

var chart = new Highcharts.Chart({
chart: {  renderTo: 'container'    },
series: [{
    data: [29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6,     54.4]        
}]
});

var containerData='';
var toggle=0;

// the button action
$('#button').click(function() {

if (toggle%2 == 0) {
  chart.series[0].setData([129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4, 29.9, 71.5, 106.4] );
} else {
  chart.series[0].setData([29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4] );
}
toggle++;
});

$('#buttonGet').click(function() {
  containerData=$("#container").html();
});

$('#buttonSet').click(function() {
  $("#container").html(containerData);
  chart.series[0].setData([129.2, 144.0, 176.0, 135.6, 148.5, 216.4, 194.1, 95.6, 54.4, 29.9, 71.5, 106.4] );
  chart.redraw();
});

$('#Empty').click(function() {
  $("#container").empty();
});

まず、[新しいデータを設定] ボタンをクリックすると、アクティブなチャートが表示されます。次に、「コンテナーの取得」で div コンタントをキャプチャします。ここで、「コンテナを空にする」ボタン (jquery .load() で変更ページをシミュレート) でコンテナを空にし、「コンテナを設定」で埋めると、チャートは非アクティブに見えます。私の質問は、チャート付きのdivコンテナをアクティブにする方法です? setDate または redraw を試しましたが、何も問題ないようです。アイデアはありますか?

ご協力いただきありがとうございます

4

0 に答える 0