javascript 通用loading动画效果实例代码


Posted in Javascript onJanuary 14, 2014

由于项目中多处要给ajax提交的时候增加等待动画效果,所以就写了一个简单的通用js方法;
代码如下:

/*ajax提交的延时等待效果*/
var AjaxLoding = new Object();
//wraperid : 显示loding图片的容器元素
//ms:表示loding图标显示的时长,毫秒
//envent:表示出发事件的事件源对象,用于获得出发事件的对象
//callback:表示动画结束后执行的回掉方法
//stop()方法表示在回掉方法执行成功后执行的隐藏动画的操作
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图标的parent元素
    this.obj = $("#" + this.lodingid);
    this.sourceEventElement=$(event.currentTarget);
    this.start = function () {



this.obj.css({positin:"relative"});
        this.sourceEventElement.attr("disabled",true);
        //默认将图标居中与lodingid显示,设置如下样式
        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);
    }
};

调用方法:

$("#elementid").click(function (e) { 
  var obj = new AjaxLoding.load("div_test", 2000,e,0,0,function () {
            //alert("提交成功!"); 
            obj.stop();//隐藏加载图标
        });
  obj.start();
        });

javascript 通用loading动画效果实例代码我用的loding图标,大家可以自行替换;

实现很简单,没有考虑什么性能、标准什么的;还有很多不完善,有更好的欢迎交流;

Javascript 相关文章推荐
Javascript结合css实现网页换肤功能
Nov 02 Javascript
js跨浏览器实现将字符串转化为xml对象的方法
Sep 25 Javascript
jQuery实现动态添加和删除一个div
Aug 12 Javascript
JavaScript人脸识别技术及脸部识别JavaScript类库Tracking.js
Sep 14 Javascript
Bootstrap每天必学之导航条
Nov 27 Javascript
AngularJS中处理多个promise的方式
Feb 02 Javascript
jQuery图片切换动画效果
Feb 28 Javascript
Spring Boot+AngularJS+BootStrap实现进度条示例代码
Mar 02 Javascript
详解angular应用容器化部署
Aug 14 Javascript
vue项目打包部署_nginx代理访问方法详解
Sep 20 Javascript
element ui table(表格)实现点击一行展开功能
Dec 04 Javascript
vue+elementUI组件table实现前端分页功能
Nov 15 Javascript
jquery操作cookie插件分享
Jan 14 #Javascript
javascript图片相似度算法实现 js实现直方图和向量算法
Jan 14 #Javascript
js动画效果制件让图片组成动画代码分享
Jan 14 #Javascript
利用JQuery制作符合Web标准的QQ弹出消息
Jan 14 #Javascript
js中opener与parent的区别详细解析
Jan 14 #Javascript
解决window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
Jan 14 #Javascript
IE与FF下javascript获取网页及窗口大小的区别详解
Jan 14 #Javascript
You might like
中国站长站 For Dede4.0 采集规则
2007/05/27 PHP
ThinkPHP之A方法实例讲解
2014/06/20 PHP
ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法
2014/10/30 PHP
Thinkphp框架开发移动端接口(1)
2016/08/18 PHP
js DataSet数据源处理代码
2010/03/29 Javascript
js动态加载以及确定加载完成的代码
2011/07/31 Javascript
javaScript 删除字符串空格多种方法小结
2012/10/24 Javascript
datagrid框架的删除添加与修改
2013/04/08 Javascript
JS Jquery 遍历,筛选页面元素 自动完成(实现代码)
2013/07/08 Javascript
javascript实现动态改变层大小的方法
2015/05/14 Javascript
图解js图片轮播效果
2015/12/20 Javascript
jQuery progressbar通过Ajax请求实现后台进度实时功能
2016/10/11 Javascript
Bootstrap基本组件学习笔记之input输入框组(9)
2016/12/07 Javascript
10道典型的JavaScript面试题
2017/03/22 Javascript
jQuery tip提示插件(实例分享)
2017/04/28 jQuery
微信小程序 标签传入数据
2017/05/08 Javascript
js每隔两秒输出数组中的一项(实例)
2017/05/28 Javascript
vue 国际化 vue-i18n 双语言 语言包
2018/06/07 Javascript
JavaScript函数的特性与应用实践深入详解
2018/12/30 Javascript
javascript将16进制的字符串转换为10进制整数hex
2020/03/05 Javascript
解决vux 中popup 组件Mask 遮罩在最上层的问题
2020/11/03 Javascript
一些Python中的二维数组的操作方法
2015/05/02 Python
Centos7 Python3下安装scrapy的详细步骤
2018/03/15 Python
python安装pywin32clipboard的操作方法
2019/01/24 Python
Flask框架路由和视图用法实例分析
2019/11/07 Python
python GUI库图形界面开发之PyQt5 MDI(多文档窗口)QMidArea详细使用方法与实例
2020/03/05 Python
详解Python3中的 input() 函数
2020/03/18 Python
python 调整图片亮度的示例
2020/12/03 Python
CSS3的Border-radius轻松制作圆角
2012/12/24 HTML / CSS
Sperry官网:帆船鞋创始品牌
2016/09/07 全球购物
阿提哈德航空官方网站:Etihad Airways
2017/01/06 全球购物
Oral-B荷兰:牙医最推荐的品牌
2020/02/25 全球购物
大学生社会实践方案
2014/05/11 职场文书
文明班集体申报材料
2014/05/23 职场文书
军事博物馆观后感
2015/06/05 职场文书
Python图片验证码降噪和8邻域降噪
2021/08/30 Python