ajax請求造成beforeSend失效

ajax請求造成beforeSend失效,在常見的就是在請求時加載loading。發現請求耗時較長的時候。loading出不來了。這個問題的主要原因是UI線程阻塞造成的。如何解決這個問題。可以使用$.Deferred解決。

如圖:

注意3點:

1、在函數在開始定義$.Deferred

2、defer.resolve(data);必須寫入,否則後面的函數回調會不執行

3、返回$.Deferred

4、ajax必須是異步請求

這裏都定義好後,使用$.when(account.add()).done(function (data) { // do somthing });就行調用。

大家有疑問可以添加qq羣:789318548, 也可以關注今日頭條《老徐聊技術》我會解答。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章