關注此問題我最近問:Understanding Document.createElement()GWT操縱DOM元素告誡
這裏是上下文:
- 有一個文本區在我的GWT GUI持有文本
- 用戶可以在此文本區域中選擇一個單詞(或一系列單詞),並將其轉換爲
highlighted text
highlighted texts
需要能夠傾聽用戶:單擊,右鍵單擊,在文本區域拖動&下降操作- 方案,其中包含1000
highlighted text
也不是不可能。
我想知道:
- 它是一個不錯的辦法來操縱直接在GWT DOM元素? (不使用小工具)
- 難道不這樣做嗎Add listener to SpanElement?它會導致內存泄漏嗎?
- 實現這些目標的最佳方法是什麼?我使用一個簡單的自定義小部件進行了一些測試,該小部件使用了span元素,並且在RootPanel中添加1000個小部件在DevMode中大約需要6到10秒。當我使用DOM元素direclty時,此操作持續時間低於1秒(優化時甚至小於200毫秒)。
編輯
性能不應該是一個問題,據我@Gilberto意見後做了一些真正的考驗。 http://jmichelgarciagwt.appspot.com/DOMTesting.html
不過,我很想有問題1)和2)
您不應該使用DevMode來衡量性能。在進行任何基準測試之前,將您的代碼編譯爲最終的JavaScript。 –