如何解決多個ajax頁面請求,頁面loading阻塞問題
來源:懂視網
責編:小采
時間:2020-11-27 20:11:57
如何解決多個ajax頁面請求,頁面loading阻塞問題
如何解決多個ajax頁面請求,頁面loading阻塞問題:在項目中碰到多個ajax加載,loading加載出現問題,沒有能第一時間加載出來。主要原因是因為:瀏覽器的渲染(UI)線程和js線程是互斥的,在執行js耗時操作時,頁面渲染會被阻塞掉。當我們執行異步ajax的時候沒有問題,但當設置為同步請求時,其他的動作(aja
導讀如何解決多個ajax頁面請求,頁面loading阻塞問題:在項目中碰到多個ajax加載,loading加載出現問題,沒有能第一時間加載出來。主要原因是因為:瀏覽器的渲染(UI)線程和js線程是互斥的,在執行js耗時操作時,頁面渲染會被阻塞掉。當我們執行異步ajax的時候沒有問題,但當設置為同步請求時,其他的動作(aja
在項目中碰到多個ajax加載,loading加載出現問題,沒有能第一時間加載出來。
主要原因是因為:瀏覽器的渲染(UI)線程和js線程是互斥的,在執行js耗時操作時,頁面渲染會被阻塞掉。當我們執行異步ajax的時候沒有問題,但當設置為同步請求時,其他的動作(ajax函數后面的代碼,還有渲染線程)都會停止下來。即使我的DOM操作語句是在發起請求的前一句,這個同步請求也會“迅速”將UI線程阻塞,不給它執行的時間。這就是代碼失效的原因。
1.是把同步改寫成異步,并且把多個ajax請求嵌套在一起。
,在成功之后再去調用另外一個ajax請求,這樣子就不會因為第一個請求先結束,把第二個請求loading給屏蔽掉。

2.是使用jquery的Deferred對象,jQuery在1.5版本之后,引入了Deferred對象,提供的很方便的廣義異步機制。
3.用定時器setTimeout() 或者setinterval()函數去定時查看是否ajax都返回成功。
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
如何解決多個ajax頁面請求,頁面loading阻塞問題
如何解決多個ajax頁面請求,頁面loading阻塞問題:在項目中碰到多個ajax加載,loading加載出現問題,沒有能第一時間加載出來。主要原因是因為:瀏覽器的渲染(UI)線程和js線程是互斥的,在執行js耗時操作時,頁面渲染會被阻塞掉。當我們執行異步ajax的時候沒有問題,但當設置為同步請求時,其他的動作(aja