0

同じページに生成するチャート(hightchart)がたくさんあり、すべてのチャートをロードするのに少なくとも5〜6秒かかります。

HTMLページ:

    <div class="graph_score" title="2" >
    <div class="graph_score" title="3" >
    <div class="graph_score" title="4" >
    <div class="graph_score" title="5" >
....

私のjquery:

    $(".graph_score").each(function() {
      id_graph = $(this).attr("title");

      $.getJSON('http://' + document.domain + '/school/teachers/generate_score/graph' + id_graph, function(data) {
            options = data;
            options.tooltip = {
            formatter: function() {
                var extrafield = this.series.options.extrafield;
                var extrafield2 = this.series.options.extrafield2;
                var extrafield3 = this.series.options.extrafield3;
                return '<b> Note: ' + this.y + ' % <br/>' + '<b>Nom de l\'examen:</b>' + extrafield[this.point.x - 1] + '</b><br/><b>Pondération</b>' + extrafield2[this.point.x - 1] + "<br /><b>Date</b>" + extrafield3[this.point.x - 1];
            }
            }
            chart = new Highcharts.Chart(options);
        });

    })

このページをより速くレンダリングするために何かできることはありますか?

*問題はスクリプト呼び出しが8回http://'+ document.domain +'/ school / Teachers / generate_scoreであることがわかっているので、その8DOMリクエスト.....しかしそれを最適化する方法がわかりません...

どうも

4

1 に答える 1

2

ネットワーク送信に時間がかかると思われる場合は、IDのリストを取得し、いくつかの結果を返す新しい関数をサーバー上に作成できます。

于 2012-04-11T15:03:45.580 に答える