首页 web前端 H5教程 分段式基于SVG文字超酷创意动画特效

分段式基于SVG文字超酷创意动画特效

May 17, 2016 am 09:01 AM


  简要教程

  这是一款基于segment.js制作的非常有创意的分段式SVG文字动画特效。这个文字动画特效通过动画SVG的描边路径来制作各种文字的动画效果,效果非常的赞。

  这个SVG文字动画特效的第一个DEMO中的最后几个例子使用了mo.js插件,一款由Oleg Solomka编写的用于制作网页图形动画的JavaScript库插件。通过mo.js,可以制作出效果更为震撼的文字动画效果。

  

1065.gif


  特效中使用的字体是exquisite lowercase font,一套极富创意的WEB字体。


  使用方法

  要使用该SVG文字动画特效,要在页面中引入segment.js,它用于动画SVG路径,d3-ease,用于制作easing动画过渡效果,以及letters.js。

<script src="js/segment.js"></script>    
2    <script src="js/d3-ease.v0.6.js"></script>                     
3    <script src="js/letters.js"></script>
登录后复制

 HTML结构

 可以使用一个

容器来包裹需要制作动画效果的文字。

<div class="my-text">my text</div>
登录后复制

初始化插件

  然后我们就可以在JavaScript中获取这个元素,通过配置参数来制作绘制文字的动画。所有的参数选项(除了individualDelays)都可以设置为以下的值:

  • 单个值:可以被所有字母接收。

  • 数组:数组中的第一个元素会被第一个字母接收,第二个元素被第二个字母接收,以此类推。

  下面是一个使用配置参数的例子:

// Selecting the container element    
02    var el = document.querySelector(&#39;.my-text&#39;);    
03    
04    // All the possible options (these are the default values)    
05    // Remember that every option (except individualDelays) can be defined as single value or array    
06    var options = {    
07        size: 100,    // Font size, defined by the height of the letters (pixels)    
08        weight: 1,         // Font weight (pixels)    
09        rounded: false,    // Rounded letter endings    
10        color: &#39;#5F6062&#39;,  // Font color    
11        duration: 1,       // Duration of the animation of each letter (seconds)    
12        delay: [0, 0.05],  // Delay animation among letters (seconds)    
13        fade: 0.5,         // Fade effect duration (seconds)    
14        easing: d3_ease.easeCubicInOut.ease,   // Easing function    
15        individualDelays: false,  
          // If false (default), every letter delay increase gradually, 
          showing letters from left to right always. 
          If you want to show letters in a disorderly way, set it to true, 
          and define different delays for the desired letters.    
16    };    
17    
18    // Initializing the text (Letters parameters: container-element, options)    
19    var myText = new Letters(el, options);
登录后复制


通过上面的配置,我们已经定义了文字显示和动画的选项,插件会在容器中生成SVG文字。默认情况下,文字是被隐藏的,如何触发文字动画,可以参看下面的方法。

// Show letters with the default options defined    
02    myText.show();    
03    
04    // Hide letters with the default options defined    
05    myText.hide();    
06    
07    // Toggle letters with the default options defined    
08    myText.toggle();    
09    
10    // An example with all the possible options for triggers    
11    // Parameters (JSON): duration, delay, fade, easing, individualDelays, callback    
12    var newOptions = {    
13        duration: 2,    
14        delay: 0.2,    
15        fade: 1,    
16        easing: d3_ease.easeCircleInOut.ease,    
17        individualDelays: false,    
18        callback: function(){    
19            myText.hide();    
20        }    
21    };    
22    // These new options will override the options defined in the initialization    
23    myText.show(newOptions);    
24    
25    // Show letters instantly, without any animation at all    
26    // There is a hideInstantly and toggleInstantly function, too    
27    myText.showInstantly();  // Shortcut for myText.show(0, 0, 0);
登录后复制

每一个SVG字母都被分配一个letter class类,例如:letter-(a, b, c, ...),以及letter-(1, 2, 3, ...)。通过这些class我们可以自定义字母的样式,例如设置margin值或定位方式等。

/* Setting margin among all letters */    
2    .letter {    
3      margin: 0 10px;    
4    }    
5    
6    /* Setting background to letter m */    
7    .letter-m {    
8      background-color: lightsalmon;    
9    }
登录后复制

以上就是分段式基于SVG文字超酷创意动画特效的内容,更多相关内容请关注PHP中文网(www.php.cn)!


本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
2 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
2 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

聊聊如何利用 SVG 实现图片马赛克效果 聊聊如何利用 SVG 实现图片马赛克效果 Sep 01, 2022 am 11:05 AM

不借助 Javascript,如何利用 SVG 实现图片马赛克效果?下面本篇文章就来带大家详细了解一下,希望对大家有所帮助!

svg怎么转jpg格式 svg怎么转jpg格式 Nov 24, 2023 am 09:50 AM

svg可以通过使用图像处理软件、使用在线转换工具和使用Python图像处理库的方法来转jpg格式。详细介绍:1、图像处理软件包括Adobe Illustrator、Inkscape和GIMP;2、在线转换工具包括CloudConvert、Zamzar、Online Convert等;3、Python图像处理库等等。

深入浅析vue3 vite中怎么使用svg图标 深入浅析vue3 vite中怎么使用svg图标 Apr 28, 2022 am 10:48 AM

svg图片在项目中使用的非常广泛,下面本篇文章带大家介绍一下如何在vue3 vite 中使用svg图标,希望对大家有所帮助!

VUE3入门教程:使用Vue.js插件玩转SVG VUE3入门教程:使用Vue.js插件玩转SVG Jun 16, 2023 am 09:48 AM

随着现代Web前端开发的不断发展,越来越多的技术被广泛应用于实际开发中。其中,Vue.js是目前最为流行的JavaScript框架之一,它基于MVVM模式,提供了丰富的API和组件库,使得开发响应式、可复用、高效的Web应用变得更加容易。而目前最新的Vue.js3版本相较于旧版,又有着更好的性能和更丰富的特性,引起了广泛的关注和研究。本文将会为大家介绍一种

详解用SVG给 favicon 添加标识 详解用SVG给 favicon 添加标识 Sep 07, 2022 am 10:30 AM

怎么使用SVG给 favicon 添加标识?下面本篇文章给大家介绍一下使用 SVG 生成带标识的 favicon的方法,希望对大家有所帮助!

vue3 vue-cli4中怎么使用svg vue3 vue-cli4中怎么使用svg May 11, 2023 pm 05:58 PM

一、安装svg-sprite-loadernpminstallsvg-sprite-loader--save-dev二、在src/components/svgIcon下新建组件index.vueimport{computed}from"@vue/reactivity";exportdefault{name:"baseSvgIcon",props:{iconClass:{type:String},className:{type:String},},setup

在HTML5画布上绘制SVG文件 在HTML5画布上绘制SVG文件 Sep 15, 2023 pm 03:09 PM

要在画布元素上绘制HTMLImageElements,请使用drawImage()方法。此方法使用src=”mySVG.svg”定义一个Image变量,并在加载时使用drawImage。varmyImg=newImage();myImg.onload=function(){  ctx.drawImage(myImg,0,0);}img.src="http://www.example.com/files/sample.svg";

svg是什么格式 svg是什么格式 Dec 29, 2020 pm 03:59 PM

SVG英文全称为Scalable Vector Graphics,意思为可缩放的矢量图形,是一种图像文件格式;SVG还是一种用XML定义的语言,可以用来描述二维矢量及矢量或栅格图形。

See all articles