2013-09-24 55 views
1

因此,我正在對一個正在開發的小型HTML5 phonegap應用程序進行性能改進,並試圖找出處理半經常更新元素的最佳方法。DOM操作與模板

我目前使用DocumentFragments進行db數據的初始批量注入,然後使用jQuery的prepend()remove()函數進行管理。

我一直在尋找模板,特別是EJS,我想知道如果我實現它,是否會得到任何性能提升。

如果是這樣,爲什麼?如果不是,爲什麼呢?

也歡迎任何其他的高性能DOM操作技巧。謝謝。

回答

2

我不認爲模板會給你提升性能(如果你不緩存你的模板)。

無論如何,您必須處理數據以生成html。

模板只是使生成的html更容易,可讀和可重用。

我可以添加少許更多 -

  1. 緩存你的模板將提高性能JSPerf
  2. 減少迴流(最小化渲染樹的regenartion)
  3. 不要添加樣式直接使用CSS類
  4. 無盡所謂的最佳做法
1

我是js模板引擎的粉絲。

但是,您需要在通過JavaScript代碼呈現html時多加小心。

主要問題是搜索引擎沒有看到它們。

第二個問題是性能,最好的呈現方式是在服務器端as twitter does,因爲你需要考慮你的網站的速度取決於客戶端環境,而你的所有用戶都沒有最好的機器看見了。

然後,我相信最好的網站的架構是twitter.com。他們實現了服務器端渲染和客戶端渲染的混合。第一個請求由服務器端呈現,而下一個請求由javascript通過ajax請求返回。