原生JS实现LOADING效果


Posted in Javascript onMarch 16, 2015

纯文本loading效果,可以自己定义颜色和速度

/** Loading animation

 *  Created by 黑と白の印? on 15/03/11.

 */

 

function loading(element,lightColor,darkColor,speed,callback){

    if(!element&&(!element.innerText||!element.textContent))return

    element = typeof element==="string"?document.getElementById(element):element

    lightColor = lightColor||"#fff",darkColor = darkColor||"#000",speed = speed||300

 

    var arr_spanEles = new Array()

     

    !function(arr_elementText){

        element.innerText=element.textContent=""

        for(var i=0;i<arr_elementText.length;i++){

            var span = document.createElement("span")

            element.innerText?span.innerText = arr_elementText[i]:span.textContent = arr_elementText[i]

            element.appendChild(span)

            arr_spanEles.push(span)

        }

    }((element.innerText||element.textContent).split(""))

 

    var index = -1,length = arr_spanEles.length

    var loadingTimer = setInterval(function(){

        arr_spanEles[Math.max(index,0)].style.color = darkColor

        if(index == length-1){

            index = -1

            callback&&callback()

        }

        ++index

        arr_spanEles[index].style.color = lightColor

    },speed)

}

以上就是本文所述的全部内容了,希望对大家学习javascript能有所帮助。

Javascript 相关文章推荐
jquery实现textarea输入字符控制(仿微博输入控制字符)
Apr 26 Javascript
JS判断表单输入是否为空(示例代码)
Dec 23 Javascript
Jquery搜索父元素操作方法
Feb 10 Javascript
JS实现控制表格单元格垂直对齐的方法
Mar 30 Javascript
JavaScript中的事件委托及好处
Jul 12 Javascript
移动端滑动插件Swipe教程
Oct 16 Javascript
AngularJS中一般函数参数传递用法分析
Nov 22 Javascript
JS实现标签页切换效果
May 04 Javascript
vue.js中实现登录控制的方法示例
Apr 23 Javascript
解决node-sass偶尔安装失败的方法小结
Dec 05 Javascript
vue.js循环radio的实例
Nov 07 Javascript
vue-cli脚手架的.babelrc文件用法说明
Sep 11 Javascript
使用jQuery实现图片遮罩半透明坠落遮挡
Mar 16 #Javascript
jQuery+css3动画属性制作猎豹浏览器宽屏banner焦点图
Mar 16 #Javascript
JavaScript中使用Callback控制流程介绍
Mar 16 #Javascript
jquery图片切换插件
Mar 16 #Javascript
JavaScript中的方法重载实例
Mar 16 #Javascript
jquery中attr和prop的区别分析
Mar 16 #Javascript
JavaScript中扩展Array contains方法实例
Aug 23 #Javascript
You might like
PHP获取用户的浏览器与操作系统信息的代码
2012/09/04 PHP
Zend Framework教程之Zend_Form组件实现表单提交并显示错误提示的方法
2016/03/21 PHP
解决Laravel5.x的php artisan migrate数据库迁移创建操作报错SQLSTATE[42000]
2020/04/06 PHP
javascript中巧用“闭包”实现程序的暂停执行功能
2007/04/04 Javascript
使用EXT实现无刷新动态调用股票信息
2008/11/01 Javascript
ExtJs 3.1 XmlTreeLoader Example Error
2010/02/09 Javascript
红米手机抢购的js代码
2014/03/10 Javascript
JavaScript的各种常见函数定义方法
2014/09/16 Javascript
基于jquery的手风琴图片展示效果实现方法
2014/12/16 Javascript
javascript实现鼠标拖动改变层大小的方法
2015/04/30 Javascript
js获取微信版本号的方法
2015/05/12 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
jquery checkbox的相关操作总结
2016/10/17 Javascript
[原创]SyntaxHighlighter自动识别并加载脚本语言
2017/02/07 Javascript
jQuery插件echarts实现的循环生成图效果示例【附demo源码下载】
2017/03/04 Javascript
angularjs中使用ng-bind-html和ng-include的实例
2017/04/28 Javascript
微信小程序实现获取自己所处位置的经纬度坐标功能示例
2017/11/30 Javascript
细说webpack源码之compile流程-rules参数处理技巧(2)
2017/12/26 Javascript
angularjs 动态从后台获取下拉框的值方法
2018/08/13 Javascript
vue模式history下在iis中配置流程
2019/04/17 Javascript
[08:08]2014DOTA2国际邀请赛中国区预选赛精彩TOPPLAY
2014/06/25 DOTA
python中使用xlrd、xlwt操作excel表格详解
2015/01/29 Python
使用Kivy将python程序打包为apk文件
2017/07/29 Python
Django实现列表页商品数据返回教程
2020/04/03 Python
python 绘制正态曲线的示例
2020/09/24 Python
pytorch简介
2020/11/11 Python
西班牙创意礼品和小工具网上商店:Curiosite
2016/07/26 全球购物
美国Randolph太阳镜官网:美国制造的飞行员太阳镜和射击眼镜
2018/06/15 全球购物
医务人员自我评价
2014/01/26 职场文书
入职担保书范文
2014/05/21 职场文书
2015年银行工作总结范文
2015/04/01 职场文书
土建施工员岗位职责
2015/04/11 职场文书
2015年检察院个人工作总结
2015/05/20 职场文书
Golang 编译成DLL文件的操作
2021/05/06 Golang
详解Nginx 被动检查服务器的存活状态
2021/10/16 Servers
Django + Taro 前后端分离项目实现企业微信登录功能
2022/04/07 Python