私は数百、数千もの店舗用のチャートを持っています。唯一の違いは、店舗と商品の名前です。 HTMLコードは1日1回動的に生成されます。ミニチュア化さえ、それは永遠に負荷をかける(少なくとも永遠のように感じる)。 Firebugを使用すると、ファイルをロードするのに非常に長い時間がかかります。このJavascript/HTML/jQueryコードをどのように減らすことができますか?
店舗と商品は、毎朝生成されるテーブルから作成されます。各表にタイトル(「JohnsMarket」など)があるため、IDを数字(「store1」、「store2」など)に縮小することはできません。
反復コードへの他のすべてのSO解決策はすべて番号の付いたIDを使用します。
各店舗/製品について、次の3つのスニペットを繰り返す必要があります。
<div id="JohnsMarket_Soup" class="frmStep">
<div id="JohnsMarket_soup_chart" ></div>
<div class="layout">
<div class="layout_slider-settings">
<div class="loading" id="JohnsMarket_soup_loading"></div>
</div>
<div class="layout_slider"><input id="JohnsMarket_soup_slider" name="area" value="1" ></div>
<div class="layout_slider-settings"> </div>
</div>
</div>
if (ui.panel.id==='JohnsMarket')
{
if(typeof JohnsMarket_soup_chart_data === 'undefined')
{
$('.loading_graph_msg').show();
window.setTimeout(function() { JohnsMarket_soup_data=checkData(JohnsMarket_soup_data,'JohnsMarket');
JohnsMarket_soup_chart_data = createChart(JohnsMarket_soup_data, 'JohnsMarket_soup_chart', 'JohnsMarket Soup', 50, 7, -1); },50);
$('.loading_graph_msg').hide('fast');
}
}
});
jQuery('#JohnsMarket_soup_slider').slider({}
$('#JohnsMarket_soup_loading').show();
var x = this.getValue();
window.setTimeout(function() {
JohnsMarket_soup_chart_data.replot();
JohnsMarket_soup_chart_data.destroy();
JohnsMarket_soup_chart_data = createChart(JohnsMarket_soup_data, 'JohnsMarket_soup_chart_data', 'JohnsMarket Soup', 5, x*7, -1);
},20);
}
});
は、これまでサーバサイド環境上に、この負荷を置くことについて考えましたか?私はあなたがPHPを見てお勧めします。 – Blender
Webサイトがない - またはおそらくPHP –
データはサーバー側に格納され、ユーザーが店舗と製品を閲覧したときにのみロードされます。 チャートはタブ内のタブに表示されます。最上位のタブにはストア名が含まれ、内側のタブには製品が含まれます。 このコードはどのようにサーバー側に格納されますか? – Jarek