2010-03-16 74 views
0

我在項目中添加了自動完成插件(http://bassistance.de/jquery-plugins/jquery-plugin-autocomplete/,版本1.1和1.0.2),以將「設備」添加到「項目」中。在一個新的項目上,這個插件很棒,從數據庫返回的數據返回FAST,您可以快速滾動列表,並可以選擇一個項目並轉到下一個項目。自動完成和IE7 - 整體頁面增長緩慢,緩慢?

一旦我有一個項目建立與它的設備,我去添加設備,表現是非常糟糕的。從服務器獲取數據列表需要4-5秒,滾動列表非常痛苦,並且光標需要幾秒鐘才能確定某個項目。名單消失後重新繪製頁面很慢。

這是發生在IE7的最新版本。 FF3和Chrome都很好,非常活潑。

頁面大小約爲40K。

我在想這是IE7 Javascript引擎的一個問題,或者是這個插件和IE7的邊緣情況;它在FF3 +中工作得足夠快。

我將不勝感激任何想法,解決方案,已知的問題,或想法如何更具體地固定下來。

我很想發佈示例代碼,但這是一個公司的應用程序,我不是多麼有用,它會被認爲服務器端的一塊無法顯示;即:你不能把它拉下來,並測試它像一個自包含的代碼片..

在此先感謝!

Chris

+0

你試過玩插件的'cacheLength'和'max'選項嗎?如果您的後端緩衝區很大,那麼緩存10(默認)可能會導致緩慢下降 – jitter 2010-03-16 15:00:03

+0

是的,我有一個25k-35k行的數據庫表,我正在從中抽取。所以,答案是肯定的,返回數據的數量可能會很大。我還沒有嘗試過這兩種選擇 - 會做。謝謝! – wchrisjohnson 2010-03-16 22:17:34

+0

好吧,我已經用這兩種方法玩了很少的成功。基本上(IE7)我輸入3-4個字符;需要5秒以上才能獲得結果;我滾動或上下拖動結果,CPU掛鉤率達到99%。在compat模式下的IE8約爲cpu的50%。仍然在尋找答案或方向來搜索... – wchrisjohnson 2010-03-17 00:39:20

回答

0

請參閱上面的註釋。基本的道理是IE7的渲染引擎是古老的,並且跟不上Chrome,Safari等。不要在所有地方使用livequery,並期望在IE7中獲得良好的性能。