選單
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP 如何 W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA 生成式 AI SCIPY AWS 網路安全 資料科學
     ❯   

AngularJS 動畫


AngularJS 在 CSS 的幫助下提供了動畫過渡效果。


什麼是動畫?

動畫是指 HTML 元素的轉換給您帶來運動的錯覺。

示例

勾選複選框以隱藏 DIV

<body ng-app="ngAnimate">

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

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

</body>
自己動手試一試 »

應用程式不應該充滿動畫,但一些動畫可以使應用程式更容易理解。


我需要什麼?

為了使您的應用程式支援動畫,您必須包含 AngularJS Animate 庫

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/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 屬性。

ng-repeat 指令還在 HTML 元素改變位置時新增 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>
自己動手試一試 »


×

聯絡銷售

如果您想將 W3Schools 服務用於教育機構、團隊或企業,請傳送電子郵件給我們
sales@w3schools.com

報告錯誤

如果您想報告錯誤,或想提出建議,請傳送電子郵件給我們
help@w3schools.com

W3Schools 經過最佳化,旨在方便學習和培訓。示例可能經過簡化,以提高閱讀和學習體驗。教程、參考資料和示例會不斷審查,以避免錯誤,但我們無法保證所有內容的完全正確性。使用 W3Schools 即表示您已閱讀並接受我們的使用條款Cookie 和隱私政策

版權所有 1999-2024 Refsnes Data。保留所有權利。W3Schools 由 W3.CSS 提供支援