由于項(xiàng)目中多處要給ajax提交的時(shí)候增加等待動(dòng)畫效果,所以就寫了一個(gè)簡(jiǎn)單的通用js方法;
代碼如下:
var AjaxLoding = new Object();
//wraperid : 顯示loding圖片的容器元素
//ms:表示loding圖標(biāo)顯示的時(shí)長(zhǎng),毫秒
//envent:表示出發(fā)事件的事件源對(duì)象,用于獲得出發(fā)事件的對(duì)象
//callback:表示動(dòng)畫結(jié)束后執(zhí)行的回掉方法
//stop()方法表示在回掉方法執(zhí)行成功后執(zhí)行的隱藏動(dòng)畫的操作
AjaxLoding.load = function(lodingid,ms,event,left,top,callback){
if (!left || typeof left == undefined)
left = 0;
if (!top || typeof top == undefined)
top = 0;
this.lodingid = lodingid; //顯示loding圖標(biāo)的parent元素
this.obj = $("#" + this.lodingid);
this.sourceEventElement=$(event.currentTarget);
this.start = function () {
this.obj.css({positin:"relative"});
this.sourceEventElement.attr("disabled",true);
//默認(rèn)將圖標(biāo)居中與lodingid顯示,設(shè)置如下樣式
var imgobj = $("<img src='/images/loaderc.gif' style='position:absolute; width:32px; height:32px;' id='img_loding'/>");
imgobj.css({ left: this.obj.width() / 2-imgobj.width()/2-left, top: this.obj.height() / 2-imgobj.height()/2-top });
imgobj.appendTo(this.obj);
this.obj.animate({height:this.obj.height()}, ms, function () {
callback();
});
};
this.stop = function () {
$("#img_loding").remove();
this.sourceEventElement.attr("disabled", false);
}
};
調(diào)用方法:
我用的loding圖標(biāo),大家可以自行替換;
實(shí)現(xiàn)很簡(jiǎn)單,沒有考慮什么性能、標(biāo)準(zhǔn)什么的;還有很多不完善,有更好的歡迎交流;
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注