gpt4 book ai didi

angularjs - 如何向 angularjs uib-alert 指令添加动画

转载 作者:行者123 更新时间:2023-12-03 08:21:43 24 4
gpt4 key购买 nike

我想为插入数组的新警报添加淡入动画,并为已解除的警报添加淡出动画。

警报会在 5 秒后自动解除。

我已经包含了 angular-animate ui-bootstrapui-bootstrap-tpls图书馆。

我怎样才能让这些动画工作?

见演示:http://plnkr.co/edit/ecbCA7h2zVA4XnvUHfFX?p=preview

HTML

<html ng-app="myApp">

<head>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.css" />
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.5.0/angular.js"></script>
<script src="https://code.angularjs.org/1.5.0/angular-animate.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/1.1.2/ui-bootstrap.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-bootstrap/1.1.2/ui-bootstrap-tpls.js"></script>
<link rel="stylesheet" href="style.css" />
<script src="script.js"></script>
</head>

<body ng-controller="MainController">
<h1>Alert With Animation</h1>
<uib-alert
ng-repeat="alert in alerts"
type="{{alert.type}}"
dismiss-on-timeout="5000"
close="alerts.splice($index, 1);">{{alert.msg}}
</uib-alert>
<input type='text' ng-model='msg' />
<button ng-click="addAlert(msg,'danger')">Add Alert</button>
</body>

</html>

脚本
(function() {

var app = angular.module("myApp", ['ui.bootstrap', 'ngAnimate']);

app.controller("MainController", function($scope) {

$scope.alerts = [];

$scope.msg = "No Animation!";

$scope.addAlert = function(msg, type) {
$scope.alerts.push({
msg: msg,
type: type
});
};

});

}());

最佳答案

答案基于 Pankaj 的评论。

这让我看到了这篇文章:http://www.yearofmoo.com/2013/08/remastered-animation-in-angularjs-1-2.html

  • 已添加 class='repeat-item'<uib-alert>..</uib-alert>元素。
  • 为动画效果添加了适当的样式。
    <style type="text/css">
    .repeat-item.ng-enter,
    .repeat-item.ng-leave {
    -webkit-transition: 0.5s linear all;
    transition: 0.5s linear all;
    }

    .repeat-item.ng-enter,
    .repeat-item.ng-leave.ng-leave-active {
    opacity: 0;
    }

    .repeat-item.ng-leave,
    .repeat-item.ng-enter.ng-enter-active {
    opacity: 1;
    }
    </style>

  • 查看工作演示: https://plnkr.co/edit/CK2lV4mBVGs8q5gyYklE?p=preview

    一个小故障

    当您第一次单击以添加警报时,没有淡入动画。在那之后,一切似乎都很好。

    关于angularjs - 如何向 angularjs uib-alert 指令添加动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35334601/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com