使用重写的$.ajax()实现后台处理进度显示(gif)

JS代码

(function($) { $("#progressImgage").hide(); $("#maskOfProgressImage").hide(); //备份jquery的ajax方法 var _ajax = $.ajax; //重写jquery的ajax方法 $.ajax = function(options) { var img = $("#progressImgage"); var mask = $("#maskOfProgressImage"); img.removeClass('hide'); mask.removeClass('hide'); var complete = options.complete; options.complete = function(httpRequest,status) { img.hide(); mask.hide(); if (complete) { complete(httpRequest,status); } }; img.show(); img.show().css({ "position" : "fixed","top" : "50%","left" : "50%","width" : "150px","height" : "150px","margin-top" : function() { return -1 * img.height() / 2; },"margin-left" : function() { return -1 * img.width() / 2; } }); mask.show().css("opacity","0.2" ); return _ajax(options); } })(jQuery);

CSS代码:

.error { @H_403_152@color: red; @H_403_152@margin: 15px; }

.hide { @H_403_152@display: none; }

.progress { @H_403_152@z-index: 2000 }

.mask { @H_403_152@position: fixed; @H_403_152@top: 0; @H_403_152@right: 0; @H_403_152@bottom: 0; @H_403_152@left: 0; @H_403_152@z-index: 1000; @H_403_152@background-color: #000000 }

HTML代码

<img id="progressImgage" class="progress hide" src="<c:url value="/resources/img/ajax-loader.gif"/>" />
    <div id="maskOfProgressImage" class="mask hide"></div>

下面是我使用的gif:

效果如下:

相关文章

JS原生Ajax操作(XMLHttpRequest) GET请求 POST请求 兼容性问题 利用iframe模拟ajax 实现表单提交的返回...
AJAX 每日更新前端基础,如果觉得不错,点个star吧 &#128515; https://github.com/WindrunnerMax/E...
踩坑Axios提交form表单几种格式 前后端分离的开发前后端, 前端使用的vue,后端的安全模块使用的SpringSe...
很早就听闻ajax的名声,但是却一直不知道怎么用,今天自己捣鼓了一下,竟然会用了,哈哈哈哈。 为了防止...
需要在服务器上进行哈 jquery的ajax方法: // jquery请求 $.ajax({ url: &quot;./server/slider.js...
Ajax函数封装ajax.js // Get / Post // 参数 get post // 是否异步 // 如何处理响应数据 // URL // var...