AngularJS教程

浏览7533
更新时间2025-08-11

什么是动画?

动画是指 HTML 元素的变换给你带来一种运动的错觉。

实例

选中复选框来隐藏 DIV:

<body ng-app="ngAnimate">

隐藏 DIV:<input type="checkbox" ng-model="myCheck">

<div ng-hide="myCheck"></div>

</body>
运行实例 »

点击 "运行实例" 按钮查看在线实例

应用程序不应充斥着动画,但一些动画可以使应用程序更易于理解。

我需要什么?

为了让你的应用程序为动画做好准备,您必须包含 AngularJS Animate 库:

<script src="https://cdn.staticfile.net/angular.js/1.6.9/angular-animate.js"></script>

然后,你必须在应用程序中引用 ngAnimate 模块:

<body ng-app="ngAnimate">

或者,如果您的应用程序有名称,请将 ngAnimate 添加为应用程序模块中的依赖项:

实例

<body ng-app="myApp">

<h1>隐藏 DIV:<input type="checkbox" ng-model="myCheck"></h1>

<div ng-hide="myCheck"></div>

<script>
var app = angular.module('myApp', ['ngAnimate']);
</script>
运行实例 »

点击 "运行实例" 按钮查看在线实例

ngAnimate 的作用是什么?

ngAnimate 模块添加和删除类。

ngAnimate 模块不会使你的 HTML 元素动画化,但是当 ngAnimate 注意到某些事件(如 HTML 元素的隐藏或显示)时,该元素会获得一些预定义的类,这些类可用于制作动画。

AngularJS 中添加/删除类的指令包括:

  • ng-show
  • ng-hide
  • ng-class
  • ng-view
  • ng-include
  • ng-repeat
  • ng-if
  • ng-switch

ng-showng-hide 指令添加或删除 ng-hide 类值。

其他指令在进入 DOM 时添加 ng-enter 类值,并在从 DOM 中删除时添加 ng-leave 属性。

当 HTML 元素更改位置时,ng-repeat 指令还会添加 ng-move 类值。

此外,在动画过程中,HTML 元素将具有一组类值,动画完成后将删除这些类值。例如:ng-hide 指令将添加这些类值:

  • ng-animate
  • ng-hide-animate
  • ng-hide-add(如果要隐藏元素)
  • ng-hide-remove(如果要显示元素)
  • ng-hide-add-active(如果要隐藏元素)
  • ng-hide-remove-active(如果要显示元素)

使用 CSS 进行动画处理

我们可以使用 CSS 过渡或 CSS 动画来为 HTML 元素添加动画效果。本教程将向你展示这两者。

要了解有关 CSS 动画的更多信息,请学习我们的 CSS 过渡教程和 CSS 动画教程。

CSS 过渡

CSS 过渡允许你在给定的持续时间内,将一个 CSS 属性值平滑地更改为另一个值:

实例

当 DIV 元素获得 .ng-hide 类时,过渡将持续 0.5 秒,高度将从 100px 平滑过渡到 0:

<style>
div {
  transition: all linear 0.5s;
  background-color: lightblue;
  height: 100px;
}

.ng-hide {
  height: 0;
}
</style>
运行实例 »

点击 "运行实例" 按钮查看在线实例

CSS 动画

CSS 动画允许你在给定的持续时间内,将一个 CSS 属性值平滑地更改为另一个值:

实例

当 DIV 元素获得 .ng-hide 类时,将运行 myChange 动画,该动画将高度从 100px 平滑过渡到 0:

<style>
@keyframes myChange {
  from {
    height: 100px;
  } to {
    height: 0;
  }
}

div {
  height: 100px;
  background-color: lightblue;
}

div.ng-hide {
  animation: 0.5s myChange;
}
</style>
运行实例 »

点击 "运行实例" 按钮查看在线实例

相关视频

更多

免费

前端入门_HTML5
初级前端入门_HTML5

64.8万次学习

收藏

免费

30分钟学会网站布局
初级30分钟学会网站布局

24.6万次学习

收藏

免费

CSS视频教程-玉女心经版
初级CSS视频教程-玉女心经版

41.1万次学习

收藏

免费

JavaScript极速入门_玉女心经系列
初级JavaScript极速入门_玉女心经系列

76.4万次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

64.9万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

41.2万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

76.6万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

64.1万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

24.3万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

36.2万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

133.1万人学习

热门下载

更多
phpStudy 2018最新版
phpStudy 2018最新版

集成PHP7,16种组合,超全大合集

下载

VC9 32位
VC9 32位

VC9 32位 phpstudy集成安装环境运行库

下载

VC11 32位
VC11 32位

VC11 32位 phpstudy集成安装环境运行库​

下载

php程序员工具箱完整版
php程序员工具箱完整版

程序员工具箱 v1.0 php集成环境

下载

VC14 32位
VC14 32位

VC14 32位 phpstudy安装环境运行库

下载

SublimeText3汉化版
SublimeText3汉化版

中文版,非常好用

下载

Notepad++ Windows版
Notepad++ Windows版

Notepad++ 8.9.7 Windows版官方安装包,适合 Windows 用户进行代码编辑、文本处理、语法高亮和插件扩展配置。

下载