Highcharts と jQuery Mobile を使用して、簡単なサイトを使用して統計を表示しています。問題は、ページが初めて読み込まれたときにグラフが表示されないことです。チャートを表示するには、手動でページをリロードする必要があります。
提案されたすべてのソリューションを確認しました (主に、スクリプトの読み込み順序の変更、ページ作成ごとの関数の委任、data-role="page" へのスクリプトの配置に基づく) が、何も機能しません。
私はdjangoテンプレートを使用していますが、これは私のページが現在どのように見えるかです(何千もの変更に失敗した後):
{% extends "web/dashboard_base.html" %}
{% load i18n %}
{% block content %}
<script src="{{ STATIC_URL }}js/highcharts/highcharts.js"></script>
<script src="{{ STATIC_URL }}js/highcharts/highcharts-more.js"></script>
<script src="{{ STATIC_URL }}js/highcharts/modules/exporting.js"></script>
<script src="{{ STATIC_URL }}js/ipki_charts.js"></script>
<script>
$(function () {
{% for indicator in indicators %}
values_per_indicator_manager({{ indicator.id }}, '{{ indicator.id }}_container');
{% endfor %}
});
</script>
<ul data-role="listview">
{% for indicator in indicators %}
<li><h2 style="width: 100%; text-align: center">
{{ indicator }}
({{ indicator.unit }})</h2>
<div id="{{ indicator.id }}_container"
style="width: 80%; margin: 0 auto">
</div>
</li>
{% endfor %}
</ul>
...
関数「values_per_indicator_manager」は、ajax を使用してデータをロードし、チャートを作成します。ここで ipki_charts.js を見ることができます: http://pastebin.com/MMQ3V1hD