2012-03-05 117 views
2

我即將實現基於HTML的日誌文件查看器。更新量從每秒1-10更新
該服務器是基於WebSocket的,並將由我開發 - 我已經建立了一個基於Fleck的原型,而且這邊看起來很好。
HTML中的日誌文件查看器

  • 是否有除了這 我可以用更新的純文本字段中的任何其它智能HTML場?
  • 您會不會推薦我收集更新並使用固定的 更新間隔工作? 我想在服務器中添加更新間隔會更有效率吧?
    我是Java Script和HTML 5的新手,所以如果這些問題微不足道,請不要太苛刻。

回答

3

我即將構建一個類似的應用程序,因此我稍微玩了一下,比較1)爲每個日誌行附加DOM元素的性能,2)爲每個日誌行附加一個錶行,和3)使用textarea標籤:

http://jsfiddle.net/PBzg5/18/

雖然從觀衆中刪除所有行是最快與textarea的花費時間最長來填補它。另外,似乎沒有比textarea的手動字符串連接更快的方法。將元素附加到DOM(即每個日誌行一個文本元素和一個元素)肯定是最快的,基於表格的版本緊隨其後。此外,使用DOM元素將允許您執行比使用textareas更高級的功能,如着色單個單詞。但是,我還沒有測試過這種性能影響。

當您實現瀏覽器時,請務必記住,當您嘗試顯示無限數量的行時,瀏覽器實際上會非常快地剎車。因此,只需將一定數量的最新行保存在緩衝區中(例如終端通常會這樣做)並僅顯示它們。

+1

請注意,如果你檢查出jsfiddle的數字有些說謊。所測量的毫秒數似乎是生成所有這些DOM元素並將它們附加到/從DOM樹中移除/去除所花費的時間。實際的繪畫需要更多的時間,並且似乎在事後發生(至少在Chrome中)。 – 2012-05-22 07:59:24