摘要:效果图需引入的使用方法
效果图:
需引入的JS
;(function($, window, document, undefined) { var leoTextAnimate = function(eles, opts) { this.element = $(eles); this.string = $(eles).html(); this.defaults = { speed: 1000, autorun: true, delay: 0, fixed: "", start: "" }; this.options = $.extend({}, this.defaults, opts); this.height = $(eles).height(); } leoTextAnimate.prototype = { init: function() { if (this.element.find(".TextAnimate").length <= 0) { var html = method.getHtml(this.options, this.string); this.element.html(html); } this.reset(); if (this.options.autorun) { if (this.options.delay == 0) { this.run(); } else { var $this = this; setTimeout(function() { $this.run(); }, this.options.delay); } } }, reset: function() { var $this = this.element.find(".TextAnimate"); $this.css({ "overflow": "hidden", "display":"inline-block", "vertical-align":"top", "height": this.height }).find("span").css({ "display": "inline-block", "vertical-align": "top", "position": "relative", "top": "0px", "transform": "translateY(0px)", "-ms-transform": "translateY(0px)", "-moz-transform": "translateY(0px)", "-webkit-transform": "translateY(0px)", "-o-transform": "translateY(0px)", "-ms-transition": "0s", "-moz-transition": "0s", "-webkit-transition": "0s", "-o-transition": "0s", "transition": "0s" }).find("i").css({ "display": "block", "font-style": "normal", "height": this.height }); }, run: function() { var speed = this.options.speed; var height = this.height; this.reset(); this.element.find("span").each(function() { var $this = $(this); var length = $this.find("i").index($this.find(".on")); var to = -length * height + "px"; if (to != $this.css("top")) { if (!window.applicationCache) { $this.animate({ top: to }, speed); } else { $this.css({ "transform": "translateY(" + to + ")", "-ms-transform": "translateY(" + to + ")", "-moz-transform": "translateY(" + to + ")", "-webkit-transform": "translateY(" + to + ")", "-o-transform": "translateY(" + to + ")", "-ms-transition": speed / 1000 + "s", "-moz-transition": speed / 1000 + "s", "-webkit-transition": speed / 1000 + "s", "-o-transition": speed / 1000 + "s", "transition": speed / 1000 + "s" }); } } }); } } var method = { getNumber: function(options, string) { if(!this.inArr(options.fixed, string)) { var text = ""; if (options.start !== "") { text += "" + options.start + ""; } for (var i = 0; i < 10; i++) { text += "" + i + ""; } return text + ""; } else { return "" + string + ""; } }, getLowerCase: function(options, string, code) { if (!this.inArr(options.fixed, string)) { var text = ""; if (options.start !== "") { text += "" + options.start + ""; } for (var i = 0; i < 26; i++) { text += "" + String.fromCharCode(97 + i) + ""; } return text + ""; } else { return "" + string + ""; } }, getUpperCase: function(options, string, code) { if (!this.inArr(options.fixed, string)) { var text = ""; if (options.start !== "") { text += "" + options.start + ""; } for (var i = 0; i < 26; i++) { text += "" + String.fromCharCode(65 + i) + ""; } return text + ""; } else { return "" + string + ""; } }, getUnicode: function(options, string, code) { if (!this.inArr(options.fixed, string)) { var text = ""; if (options.start !== "") { text += "" + options.start + ""; } for (var i = (code - this.getRand(2, 7)); i < (code + this.getRand(3, 10)); i++) { text += "" + String.fromCharCode(i) + ""; } return text + ""; } else { return "" + string + ""; } }, getHtml: function(options, string) { var html = "" for (var i = 0; i < string.length; i++) { var text = string.substr(i, 1); var code = text.charCodeAt(); if (code > 47 && code < 58) { html += this.getNumber(options, text); } else if (code > 64 && code < 91) { html += this.getUpperCase(options, text, code); } else if (code > 96 && code < 123) { html += this.getLowerCase(options, text, code); } else { html += this.getUnicode(options, text, code); } } return html + ""; }, getRand: function(minnum, maxnum) { return Math.floor(minnum + Math.random() * (maxnum - minnum)); }, inArr: function(arr,str){ for(var i=0;i使用方法:
$("#totalnum").html("2,423"); $("#totalnum").leoTextAnimate({ fixed: [",", ":", "."], start: "0" });
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/106549.html
摘要:贝塞尔曲线贝塞尔曲线是应用于二维图形应用程序的数学曲线。通过调整控制点,贝塞尔曲线的形状会发生变化。让我们看看贝塞尔曲线的工作原理。贝塞尔曲线需要四个值,或者更准确地说它需要两对数字。每对描述立方贝塞尔曲线控制点的和坐标。 这是专门探索 JavaScript 及其所构建的组件的系列文章的第 13 篇。 如果你错过了前面的章节,可以在这里找到它们: JavaScript 是如何工作的:...
摘要:或表示红色,表示绿色,表示蓝色,也可取其他数值来指定颜色。针对多字节文字,中文句子也是单词允许在单词内换行。 一、HTML基础 html常见元素和理解 html常见元素分类 head区元素:(不会在页面上留下直接内容) meta title style link script base body区: div/selection/article/aside/header/f...
摘要:或表示红色,表示绿色,表示蓝色,也可取其他数值来指定颜色。针对多字节文字,中文句子也是单词允许在单词内换行。 一、HTML基础 html常见元素和理解 html常见元素分类 head区元素:(不会在页面上留下直接内容) meta title style link script base body区: div/selection/article/aside/header/f...
摘要:在其沙箱中提供了将文本转换成文档对象模型的功能。浏览器使用与该形状对应的数据结构来表示文档。我们将这种表示方式称为文档对象模型,或简称。树回想一下第章中提到的语法树。语言的语法树有标识符值和应用节点。元素表示标签的节点用于确定文档结构。 来源:ApacheCN『JavaScript 编程精解 中文第三版』翻译项目原文:The Document Object Model 译者:飞龙 协议...
摘要:非常的庞大,而且它是完全为设计而生的动效库。它运行于纯粹的之上,是目前最强健的动画资源库之一。可能是创建滚动特效最好用的工具,它支持大量的浏览器,只要它们支持和特性。可以通过安装吊炸天了,接近现实生活中的物理运动碰撞惯性动画库。 收集日期为2019-02-28,★代表当时的该项目在github的star数量 Animate.css 56401 ★ 一个跨浏览器的动效基础库,是许多基础动...
阅读 2499·2021-09-30 10:00
阅读 3463·2021-09-22 10:54
阅读 6092·2021-09-07 10:28
阅读 2883·2019-08-29 13:53
阅读 713·2019-08-29 12:42
阅读 931·2019-08-26 13:51
阅读 1222·2019-08-26 13:32
阅读 2987·2019-08-26 10:39