原生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 相关文章推荐
根据分辨率不同,调用不同的css文件
Jul 07 Javascript
显示js对象所有属性和方法的函数
Oct 16 Javascript
JS操作iframe里的dom(实例讲解)
Jan 29 Javascript
For循环中分号隔开的3部分的执行顺序探讨
May 27 Javascript
jquery 插件实现瀑布流图片展示实例
Apr 03 Javascript
bootstrap table配置参数例子
Jan 05 Javascript
vue2.0中vue-cli实现全选、单选计算总价格的实例代码
Jul 18 Javascript
解决使用bootstrap的dropdown部件时报错:error:Bootstrap dropdown require Popper.js问题
Aug 30 Javascript
详解Vue CLI 3.0脚手架如何mock数据
Nov 23 Javascript
vue的路由映射问题及解决方案
Oct 14 Javascript
vue中axios的二次封装实例讲解
Oct 14 Javascript
vue 清空input标签 中file的值操作
Jul 21 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中for循环语句的几种变型
2006/11/26 PHP
php获取mysql版本的几种方法小结
2008/03/25 PHP
PHP中单引号与双引号的区别分析
2014/08/19 PHP
使用symfony命令创建项目的方法
2016/03/17 PHP
javascript中删除指定数组中指定的元素的代码
2011/02/12 Javascript
JavaScript中的parse()方法使用简介
2015/06/12 Javascript
JS实现仿Windows经典风格的选项卡Tab切换代码
2015/10/20 Javascript
js实现密码强度检测【附示例】
2016/03/30 Javascript
使用jQuery实现WordPress中的Ctrl+Enter和@评论回复
2016/05/21 Javascript
JS匿名函数实例分析
2016/11/26 Javascript
smartupload实现文件上传时获取表单数据(推荐)
2016/12/12 Javascript
在node中使用jwt签发与验证token的方法
2019/04/03 Javascript
Vuex的actions属性的具体使用
2019/04/14 Javascript
利用原生JS实现欢乐水果机小游戏
2020/04/23 Javascript
使用 Github Actions 自动部署 Angular 应用到 Github Pages的方法
2020/07/20 Javascript
如何利用JavaScript编写一个格斗小游戏
2021/01/06 Javascript
[52:29]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第三局
2016/03/03 DOTA
深入Python解释器理解Python中的字节码
2015/04/01 Python
django实现登录时候输入密码错误5次锁定用户十分钟
2017/11/05 Python
Python对excel文档的操作方法详解
2018/12/10 Python
对python中dict和json的区别详解
2018/12/18 Python
Python将json文件写入ES数据库的方法
2019/04/10 Python
Django项目创建到启动详解(最全最详细)
2019/09/07 Python
Python日志syslog使用原理详解
2020/02/18 Python
全球速卖通巴西站点:Aliexpress巴西
2016/08/24 全球购物
Stokke美国官方网店:高级儿童家具、推车、汽车座椅和配件
2020/06/06 全球购物
先进党支部事迹材料
2014/01/13 职场文书
人事部岗位职责范本
2014/03/05 职场文书
2014年预备党员学习两会心得体会
2014/03/17 职场文书
小学语文课后反思精选
2014/04/25 职场文书
小学生个人先进事迹材料
2014/05/08 职场文书
2015年店长工作总结范文
2015/04/08 职场文书
公司联欢会主持词
2015/07/04 职场文书
如何在pycharm中快捷安装pip命令(如pygame)
2021/05/31 Python
Python接口自动化之文件上传/下载接口详解
2022/04/05 Python
html网页引入svg图片的4种方式
2022/08/05 HTML / CSS