Anime.js简介

Anime.js简介

Anime.js是一个轻量级的JavaScript库,具有直接、有效的API。它的功能包括JavaScript对象、CSS和DOM元素,同时Anime.js也很容易使用。

传统上,我们通过逐渐修改一个元素的造型来制作动画。这样的动作在JavaScript中是可以实现的,但即使是最简单的动画,开发起来也是很困难和费时的。

Anime.js通过提供各种工具使动画更容易。它提供了调节时间和用户输入的功能,并支持在同一个对象上同时运行许多动画。

大多数流行的浏览器也支持Anime.js。

Anime.js的安装部分

  • 你可以从下面提供的链接中下载anime.min.js文件后直接使用
<script src="./folder/subFolder/anime.min.js"></script> 
  • 你可以通过搜索 “anime.js CDN “找到这个链接,并将其粘贴到你的脚本标签中。
<script src="https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.0/anime.min.js"></script>

Anime.js的基本语法

我们已经看到了如何安装anime.js和它的基础知识,现在让我们来看看anime.js的语法 —

let animation = anime ({
   targets,
   properties,
   property parameters,
   animation parameters,
});

在上面的语法中,我们使用Anime.js提供的anime()函数创建了一个动画,anime()函数接受一个JavaScript对象作为参数,其中包含了我们动画的属性。

现在我们来详细讨论一下Anime.js基本语法中的每一个术语–

targets

目标中包含了对我们希望制作动画的组件的引用,其形式可以是HTML标签、类或id元素、任何CSS选择器、单个DOM节点或DOM节点数组;用JavaScript创建的对象,至少有一个数字属性和由前三个值中的任何一个组成的数组。

properties

在提到目标之后,我们会提到我们想要动画化的属性。属性可以包括可以被动画化的CSS、JS和SVG属性。

属性参数

属性参数包括在很大程度上影响动画的时间的方面。这个属性参数涵盖了几个特性参数,包括持续时间、延迟、结束-延迟、缓和、圆形等等。

动画参数

动画的前后动作是由动画参数控制的。这包括与动画有关的选项,包括方向、循环和自动播放。

控制

为了使动画具有互动性,Anime.js进一步提供了控制工具。下面是这些技术的一些例子,开始、暂停、反转和重新开始。

例子

在这个例子中,我们将创建一些具有特定宽度和高度尺寸的div元素。使用一些CSS,我们将添加一个特定的背景颜色。在JavaScript部分,我们首先要在anime函数中添加所有需要的东西,然后传递具有这些属性的对象。

覆盖所有内容后,现在我们的主要目标是在所需元素上制作动画,也就是这里的div块。在这种情况下,我们将从初始位置向X轴方向使用translateX。

<html>
<head>
   <script src= "https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.0/anime.min.js"></script> 
</head>
<body>
   <h2>
      Introduction of Anime.Js
   </h2>
   <div style="background: green;
      height: 30px;
      width: 50px;">
   </div>
   <script>
      let animation = anime({
         targets: "div",
         translateX: 150,
         easing: "linear",
         direction: "alternate",
         height: "100px",
         width: "100px",
         duration: 2300,
         loop: true,
      });
   </script>
</body>
</html>

在上面的代码中,首先,我们定义了HTML代码的主要结构,然后我们使用代码头部的’src’标签将anime.js库添加到我们的代码。在正文中,我们首先定义了要实现动画的div元素。然后在脚本标签中,我们定义了我们需要的动画类型,即给定的绿色块从它的位置到另一个位置的运动,并在一定的时间内改变该块的大小。

例子

在前面的例子中,我们定义了一个盒子,并通过动画来增加它的高度和宽度,现在我们要改变它的高度和宽度,但是要增加宽度和减少高度。

<html>
<head>
   <script src= "https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.0/anime.min.js"></script>
</head>
<body>
   <h2>
      Increasing the size of width and decreasing the size of height
   </h2>
   <div style="background: green;
      height: 100px;
      width: 10px;">
   </div>
   <script>
      let animation = anime({
         targets: "div",
         translateX: 150,
         easing: "linear",
         direction: "alternate",
         height: "10px",
         width: "100px",
      });
   </script>
</body>
</html> 

在上面的代码中,首先,我们定义了HTML代码的主要结构,然后我们使用代码头部的’src’标签将anime.js库添加到我们的代码。在正文中,我们首先定义了要实现动画的div元素。然后在脚本标签中,我们定义了我们需要的动画类型,即给定的绿色块从它的位置到另一个位置的运动,并在一定的时间内改变块的大小,即减少高度和增加宽度的大小。

例子

在这个例子中,我们将使用anime.js库将一个长方形的盒子变成一个圆形的动画。我们将设置变化的持续时间为3000秒,并在一个循环中运行。让我们看看代码 –

<html>
<head>
   <script src= "https://cdnjs.cloudflare.com/ajax/libs/animejs/3.2.0/anime.min.js"></script>
</head>
<body>
   <center>
      <h1 style="color: red;">More Animation by anime.js</h1>
      <b>
         Here we will do animation on the border
      </b>
      <div style="background: blue;
         width: 100px;
         height: 100px;
         padding-top: 10px; ">
      </div>
   </center>
   <script>
      let animation = anime({
         targets: "div",
         easing: "easeInOutQuad",
         loop: true,
         duration: 3000,
         backgroundColor: "yellow",
         borderRadius: "110px",
      });
   </script>
</body>
</html>

在上面的代码中,首先,我们定义了HTML代码的主要结构,然后我们使用代码头部的’src’标签将anime.js库添加到我们的代码。在正文中,我们首先定义了要实现动画的div元素。然后在脚本标签中,我们定义了我们所需要的动画类型,即在三秒或3000毫秒内将给定的蓝色盒子移动到一个蓝色圆圈。

总结

在本教程中,我们通过实例详细讨论了Anime.js。Anime.js是一个轻量级的JavaScript库,有一个简单有效的API。它的功能包括JavaScript对象、CSS和DOM元素,而且Anime.js很容易使用。传统上,我们通过逐渐修改一个元素的造型来制作动画。这样的动作用JavaScript就可以实现,但即使是最简单的动画,开发起来也很困难,而且很费时间。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

JavaScript 教程