Twitter Bootstrapフレームワークを使用したWebページで、GoogleChartToolsを使用してグラフを作成しています。表示されるグラフには、円グラフ、線グラフ、縦棒グラフの3種類があり、それぞれ個別のタブに表示されます。チャートデータはAjaxを介して受信されます。
Ajaxを介してデータを受信するとすぐに、チャートは正常に表示されます。しかし、別のタブ、つまり別のチャートに移動して最初のタブに戻ると、チャートのラベルが正しく再配置されません。
ここに含まれているのは、タブの変更前後の問題を示す画像です。
この問題は、折れ線グラフと縦棒グラフでも発生します。
ただし、ウィンドウを変更してから戻った場合、または非表示にしてからグラフを再表示した場合、問題は発生しません。タブを変更した場合にのみ発生します。
タブのマークアップは次のようになります。
<div class="charts-div" style="text-align: center">
<ul class="nav nav-tabs">
<li class="active"><a href="#tab-pie" data-toggle="tab">Pie</a></li>
<li><a href="#tab-line" data-toggle="tab">Line</a></li>
<li><a href="#tab-column" data-toggle="tab">Columns</a></li>
</ul>
<div class="tab-content">
<div class="tab-pane active" id="tab-pie">
<div class="chart pie-chart" id="pie-prt"></div>
</div>
<div class="tab-pane" id="tab-line">
<div class="chart line-chart" id="line-prt"></div>
</div>
<div class="tab-pane" id="tab-column">
<div class="chart column-chart" id="column-prt"></div>
</div>
</div>
</div>
Chrome 22、IE9、Firefox12でチェックイン。結果は同じです。タブ変更またはタブフォーカスイベント用にプログラムされた追加のコード/イベントはありません。