我有數百個,也許有數千個商店的圖表。唯一的區別是商店和產品的名稱。 HTML代碼每天動態生成一次。即使縮小,也需要永久加載(至少感覺像永恆)。如果我使用Firebug,那麼加載文件需要非常很長的時間才能加載。如何減少這個Javascript/HTML/jQuery代碼?
商店和產品是從每天早上產生的表格創建的。由於每個表具有標題(例如,「JohnsMarket」),所以ID不能被縮減爲數字(例如,'store1','store2')。
重複性代碼的所有其他SO解決方案使用編號ids。
對於每個商店/產品,我必須重複以下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
沒有網站 - 或者PHP –
數據存儲在服務器端,只有在用戶查看商店和產品時才加載。 圖表顯示在選項卡內的選項卡中。頂級選項卡包含商店名稱,內部選項卡包含產品。 這段代碼如何存儲在服務器端? – Jarek