【问题标题】:AngularJS route change happens before ng-leave animation is finishedAngularJS 路由更改发生在 ng-leave 动画完成之前
【发布时间】:2016-01-23 20:55:05
【问题描述】:

我正在使用以下 css 代码来为我的 ui-view 更改设置动画。

.fadein.ng-enter,
.fadeout.ng-leave {
  -webkit-transition: all linear 1s;
  -moz-transition: all linear 1s;
  -o-transition: all linear 1s;
  transition: all linear 1s;
  display: block !important;
}

.fadein.ng-enter {
  opacity: 0;
}

.fadeout.ng-leave {
  opacity: 1;
}

.fadein.ng-enter.ng-enter-active {
  transition-delay: 1s;
  opacity: 1;
}

.fadeout.ng-leave-active {
  opacity: 0;
}

在这里它被应用到 ngview:

 <div ui-view class="fadein fadeout"></div>

但是,路由更改(例如由 $state.go("home.dashboard") 启动)总是发生在我的 ng-leave 动画甚至开始(淡出动画)之前。

我尝试添加 转换延迟:1s; 属性,但动画仍未执行。

【问题讨论】:

    标签: angularjs css-transitions ng-animate


    【解决方案1】:

    我不知道为什么,但是添加

    position: absolute;
    

    我的 ui-view div 解决了这个问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-23
      • 1970-01-01
      相关资源
      最近更新 更多