我有一個昂貴的函數createNewWindow()。我想在調用方法時顯示進度指示器,然後在函數結束時隱藏該指示器。我嘗試過的所有事情,除非方法已經完成,否則我沒有看到進度指示器,所以我試圖以同步方式調用該方法(和失敗)。異步調用函數?
我嘗試這樣做:
而且createNewWindow的最後一行是$( 「#進步」)顯示()。沒有工作。在此之前,我嘗試過:
$("#submit").click(function() {
$("#progress").show();
setTimeout(createNewWindow(), 0);
});
同樣的效果。
什麼是正確的方法來做到這一點?
我看到一些其他的SO帖子,如this描述使用setInterval或setTimeout,但我無法讓他們像我期待的那樣工作。
以異步方式調用同步函數並不是如此。它仍然會阻止瀏覽器,你最好的選擇是旋轉的東西。 – adeneo 2013-04-05 23:16:05