最近在做的一個(gè)外包項(xiàng)目,由于客戶的要求,首頁內(nèi)容十分繁雜,并且由于客戶需求的變更,導(dǎo)致初期的設(shè)計(jì)不夠合理,調(diào)用了大量的后臺服務(wù),首頁兩三秒才能加載出來,重新調(diào)整服務(wù)又太麻煩,基本上是重構(gòu)了。。。
優(yōu)化方式就是把一些次要的信息全部寫成json接口,通過ajax在頁面加載之后異步調(diào)用。首頁打開速度明顯變快。其他信息也慢慢加載出來,不影響用戶瀏覽使用。
具體做法:
<script type="text/javascript">
var parames={
"areaId":"${as.areaId}"
};
$.ajax({
url:'${ctx }/search/name',
type:'post',
dataType:'text',
data:parames,
error: function(){
console.log("獲取地域信息失敗!");
},
success:function(data){
$("#${as.areaId}s").html(data);
}
});
</script>
此段js寫直接在頁面上的 <c:forEach>標(biāo)簽內(nèi),相當(dāng)于每個(gè)列表的元素下面都加了這么一段js,而且元素的id是由后臺返回的動態(tài)id,因此頁面上的元素都可以獲取到要顯示的內(nèi)容。
比較向往前后端分離的思想,不過暫時(shí)沒法在項(xiàng)目中用上,對前端的要求比較高,不過偶爾用ajax這樣救救火還是挺不錯(cuò)的!