我正在使用一个简单的网站来显示我使用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>
...
function'values_per_indicator_manager'使用ajax加载数据并创建Chart。你可以在这里看看ipki_charts.js: http://pastebin.com/MMQ3V1hD