2010-08-09 60 views
0

我正在加載一個動態應用程序(需要20-30秒),並且我正在嘗試創建一個動態進度條,向用戶顯示多少任務已在頁面加載時動態完成。使用進度條異步加載耗時的腳本

function progress(percent) 
{ 
    $("#progressbar").progressbar({value: Math.round((percent*100))}); 
} 

這是通過簡單的函數調用叫做:

我通過設置緩衝區,以虛假的,有我的腳本輸出一行JavaScript因爲它的進展調用一個函數來增加滾動條完成這個比如我的頁面生成的進度(15)並實時發送到瀏覽器。有人在另一個線程上建議我可以通過將進度條附加到.load()AJAX調用來優化這一點,但據我所知,只有在整個頁面加載後纔會返回。有什麼辦法讓我使用某種類型的異步調用來執行耗時的代碼,並且能夠在執行時顯示實時進度?

+1

我動態地喜歡動態的第一個動態段落。 ;) – spender 2010-08-09 00:09:40

+0

服務器端的語言是什麼? – quantumSoup 2010-08-09 00:10:08

+1

動態超載 – Marko 2010-08-09 00:11:50

回答

0

您需要類似售票系統的東西。當客戶請求這個耗時的操作時,它們被賦予一個ticket-id。

現在他們可以輪詢服務器的更新;這可以通過與實際處理請求不同的進程/腳本來提供。如果您在問題中添加更多詳細信息,我會更新此答案。