我可能失去了一些東西在這裏真的很明顯在更新......頁面元素並不明顯負載
我展示頁面加載過程中與進度條的對話框。對話框和進度條都是jQueryUI小部件。有幾個階段的加載 - 頁面加載jQuery $ .get()請求來加載資源,然後在$(document).ajaxStop()事件中,處理這些資源。在整個過程中,我正在更新進度欄和一些狀態文本。
問題是,只要ajaxStop事件觸發,更新就會停止。該代碼在資源加載期間很好地工作,但然後凍結,並且在處理期間沒有看到任何更新。如果我在Chrome中的post-ajaxStop更新中添加斷點並逐句通過代碼,則屏幕會正確更新,以便我知道代碼正常工作。
任何人都可以解釋爲什麼一切都在我的AJAX加載階段很好地更新,但然後停止在ajaxStop事件?事後有沒有簡單的方法讓更新繼續?
謝謝!
你可能會發佈一個鏈接,以便它可以被複制嗎? – pimvdb 2011-02-28 11:53:36
不幸的是我無法發佈鏈接。進一步的研究表明,這是因爲瀏覽器在Javascript實際執行時不會更新屏幕。我猜它可以在Ajax階段工作,因爲控件在請求完成時返回給瀏覽器。我需要一些方法在每次迭代時將控制權交還給瀏覽器 - 這可能是使用setTimeout或類似的方法,但是在我的代碼中很難實現... – 2011-02-28 12:23:18