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 相关文章推荐
js加解密 脚本解密
Feb 22 Javascript
JScript 脚本实现文件下载 一般用于下载木马
Oct 29 Javascript
Mac地址验证的javascript代码
Nov 09 Javascript
jQuery实现复选框全选/取消全选/反选及获得选择的值
Jun 12 Javascript
HTML页面定时跳转方法解析(2种任选)
Dec 22 Javascript
node.js实现登录注册页面
Apr 08 Javascript
webpack+vuex+axios 跨域请求数据的示例代码
Mar 06 Javascript
vue实现tab切换外加样式切换方法
Mar 16 Javascript
浅谈vue-cli 3.0.x 初体验
Apr 11 Javascript
layer实现登录弹框,登录成功后关闭弹框并调用父窗口的例子
Sep 11 Javascript
微信小程序实现身份证取景框拍摄
Sep 09 Javascript
JavaScript实现alert弹框效果
Nov 19 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
SONY ICF-SW07收音机电路分析
2021/03/02 无线电
DOTA2游戏同人动画《龙之血》导演接受采访
2021/03/05 欧美动漫
PHP中获取时间的下一周下个月的方法
2014/03/18 PHP
Zend Framework框架路由机制代码分析
2016/03/22 PHP
PHP微信开发之微信消息自动回复下所遇到的坑
2016/05/09 PHP
WAF的正确bypass
2017/01/05 PHP
老生常谈ThinkPHP中的行为扩展和插件(推荐)
2017/05/05 PHP
laravel 操作数据库常用函数的返回值方法
2019/10/11 PHP
laravel框架中表单请求类型和CSRF防护实例分析
2019/11/23 PHP
javascript 类定义的4种方法
2009/09/12 Javascript
JS获取dom 对象 ajax操作 读写cookie函数
2009/11/18 Javascript
HTML中的setCapture和releaseCapture使用介绍
2012/03/21 Javascript
js 异步操作回调函数如何控制执行顺序
2013/12/24 Javascript
JavaScript实现当网页加载完成后执行指定函数的方法
2015/03/21 Javascript
完全深入学习Bootstrap表单
2016/11/28 Javascript
js实现截图保存图片功能的代码示例
2017/02/16 Javascript
JavaScript实现兼容IE6的收起折叠与展开效果实例
2017/09/20 Javascript
vue父组件中获取子组件中的数据(实例讲解)
2017/09/27 Javascript
nodejs中安装ghost出错的原因及解决方法
2017/10/23 NodeJs
vue 项目接口管理的实现
2019/01/17 Javascript
基于vue-cli3+typescript的tsx开发模板搭建过程分享
2020/02/28 Javascript
python使用PyFetion来发送短信的例子
2014/04/22 Python
Python整型运算之布尔型、标准整型、长整型操作示例
2017/07/21 Python
python select.select模块通信全过程解析
2017/09/20 Python
Python的argparse库使用详解
2018/10/09 Python
解决安装pyqt5之后无法打开spyder的问题
2019/12/13 Python
浅谈Python爬虫原理与数据抓取
2020/07/21 Python
MediaMarkt比利时:欧洲最大电器连锁店
2020/12/21 全球购物
请解释一下webService? 如何用.net实现webService
2014/06/09 面试题
幼儿园大班教学反思
2014/02/10 职场文书
中学生打架检讨书
2014/02/10 职场文书
经管应届生求职信范文
2014/05/18 职场文书
2015年党建工作总结
2015/03/30 职场文书
个人借条范本
2015/05/25 职场文书
2016十一国庆节感言
2015/12/09 职场文书
一行代码python实现文件共享服务器
2021/04/22 Python