ngAnimate插件有什么用
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要介绍ngAnimate插件有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!ngAnimate插件是做什么的?ngAnimate插件如其名字一样是为元素提供动画
千家信息网最后更新 2026年11月01日ngAnimate插件有什么用
这篇文章主要介绍ngAnimate插件有什么用,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
ngAnimate插件是做什么的?
ngAnimate插件如其名字一样是为元素提供动画的。
怎么定义动画?
第一步必须是引入插件
第二步让app引入(依赖)这个插件
var appH5=angular.module("app",['ngAnimate']);appH5.controller("myTabCtrl",['$scope',function($scope){ $scope.isShow=true;}])我是要动画的元素添加动画的第一种方式:通过css3.0的方式样式定义示例.new-item{ padding: 10px; border-bottom: 1px solid #ededed; font-size: 1.5rem; position: relative; transition:all 0.5s;}/*元素进入页面初始状态*/.new-item.ng-enter{ top: 10px;}/*进入页面动画后的最终状态*/.new-item.ng-enter-active{ top: 0px;}/*元素移出页面初始状态*/.new-item.ng-leave{ opacity:1;}/*移出页面动画后的最终状态*/.new-item.ng-leave-active{ opacity:0;}//html我是要动画的元素为什么添加样式就可以产生动画?
当元素进入页面时,angular会给元素依次添加上class ng-enter 和 ng-enter-active,相信大家都知道,CSS3.0在一个元素定义了 transition 之后,两个相同属性的属性值改变就会用过渡动画来实现属性值的改变。当元素移除页面时也是同理,所以我们只要定义元素的四个class来定义这四个时间点的状态,其他的就交给angular来做就好了。支持这种方式定义动画的指令有哪些?
ng-if、ng-view、ng-repeat、ng-include、ng-switch
这几个指令是通过新建节点和移除节点来实现元素的显示和隐藏的ng-repeat 的不同之处
.new-item{ padding: 10px; border-bottom: 1px solid #ededed; font-size: 1.5rem; position: relative; transition:all 0.5s;}.new-item.ng-enter{ top: 10px;}.new-item.ng-enter-active{ top: 0px;}.new-item.ng-enter-stagger{/*ng-repeat提供了这个样式,来实现每一个item条目的依次执行某个动画 */ animation-delay:100ms; -webkit-animation-delay:100ms; }.new-item.ng-leave{ opacity:1;}.new-item.ng-leave-active{ opacity:1;}.new-item.ng-leave-stagger{ animation-delay:100ms; -webkit-animation-delay:100ms; }//html{{new.title}}
刚才说通过新建和删除元素来实现的指令是可以进行动画的,那么只是更改样式显示或者隐藏元素的指令(ng-show ng-hide ng-class )能不能进行动画呢?
/*元素隐藏初始状态*/.new-item.ng-hide-add{ opacity:1;}/*隐藏操作动画后的最终状态*/.new-item.ng-hide-add-active{ opacity:0;}/*元素显示初始状态*/.new-item.ng-hide-remove{ top: 10px;}/*显示操作动画后的最终状态*/.new-item.ng-hide-remove-active{ top: 0px;}添加动画的第二种方式:通过js的方式
//ng-if、ng-view、ng-repeat、ng-include、ng-switch 指令appH5.animation(".new-item",function(){ return { leave:function(element,done){ //第一个参数是运动的元素,第二个参数是动画完成后的回调,必须调用的,不调用则指令功能不会执行 $(element).animate({width:0,height:0},1000,done);//借助jQuery }, enter:function(element,done){ $(element).css({width:100,height:100});//借助jQuery $(element).animate({width:100,height:100},1000,done)//借助jQuery } }});//ng-show ng-hide ng-class 指令appH5.animation(".new-item",function(){ return { addClass:function(element,sClass,done){ //第一个参数是运动的元素 //第二个参数是元素的样式-->一般用不上 //第三个参数是动画完成后的回调,必须调用的,不调用则指令功能不会执行 $(element).animate({width:0,height:0},1000,done) }, removeClass:function(element,sClass,done){ $(element).css({width:100,height:100}); $(element).animate({width:100,height:100},1000,done) } }});以上是"ngAnimate插件有什么用"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
元素
动画
状态
指令
插件
页面
参数
方式
样式
属性
内容
功能
篇文章
节点
运动
不同
相同
三个
两个
价值
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技
深圳市人人互联网科技有限公司
哈尔滨大商圈互联网科技有限公司
北京互联网科技有限公司
有木互联网科技
广西互联网科技公司
互联网金融科技委员会
科技与互联网的利与弊
北京三清互联网科技
智腾互联网科技有限公司
语蝶互联网科技有限公司
千方科技属于互联网企业吗
互联网与医疗科技
恒生互联网科技指数跳水
智帮互联网科技公司最近动向
山东大美朱楼互联网科技有限公司
互联网科技企业商标注意事项
银川新华互联网科技学校是国营吗
互联网科技和医药行业
小牛互联网科技有限公司地址
山东特亿宝互联网科技有限公司
朗新科技与工业互联网
卓越科技(互联网 )
迪茉互联网科技
鑫亿盛互联网科技
南京欣网互联网科技
互联网科技的未来发展
互联网高科技股票
未来五年的互联网科技
山东蛋芒互联网科技有限公司