Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/fsharp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 角度JS移动动画不';行不通_Css_Animation_Angularjs - Fatal编程技术网

Css 角度JS移动动画不';行不通

Css 角度JS移动动画不';行不通,css,animation,angularjs,Css,Animation,Angularjs,我正在尝试使用AngularJS构建一个幻灯片,就像这个带箭头的幻灯片(下一个和上一个) 以下是HTML代码: <div class="carousel"> <div class="left"><input type="button" value="Back" ng-click="slideBack()" ng-disabled="currentSlide == 0" /></div> <div class="content"&g

我正在尝试使用AngularJS构建一个幻灯片,就像这个带箭头的幻灯片(下一个和上一个)

以下是HTML代码:

<div class="carousel">
   <div class="left"><input type="button" value="Back" ng-click="slideBack()" ng-disabled="currentSlide == 0" /></div>
   <div class="content">
         <div class = "slide" ng-repeat="img in imgs | startFrom:currentSlide | limitTo:slidesSize" ng-animate="{enter: 'animate-enter', leave: 'animate-leave', move: 'animate-move'}">
    <img ng-src="{{img.url}}" />
         </div>
   </div>
   <div class="right"><input type="button" value="Next" ng-click="slideNext()" ng-disabled="currentSlide+slidesSize >= imgs.length" /></div>
        </div>
以下是过滤器:

angular.module('carouselFilters', []).filter('startFrom', function() {
    return function(input, start) {
        start = +start;
        return input.slice(start);
    }
});
控制器:

function carouselCtrl($scope, $http) {
  $scope.currentSlide = 0;
  $scope.slidesSize = 3;

  $http.get('carousel_images.json').success(function(data) {
        $scope.imgs = data;
  });

  $scope.slideNext = function(){
        $scope.currentSlide++;
  }

  $scope.slideBack = function(){
        $scope.currentSlide--;
  }


}
“动画输入”和“动画输出”可以正常工作,但“动画移动”不起作用,知道吗

谢谢。

  • 在将DOM元素添加到重复列表中时输入
  • 保留从重复列表中删除DOM元素的时间
  • 当DOM元素从重复列表中的一个位置移动到另一个位置时的移动
我从nganimate.org的一个例子开始

在ng repeat下有一个项目列表

line 21: <li ng-animate="'animate'" ng-repeat="name in names | filter:search">
第21行:
  • 在style.css下,我使用了与您相同的css

    我创建了一个简单的按钮,可以使用u.shuffle来洗牌li,它可以完成您描述的动画

    <button ng-click="shuffle()">Shuffle the List</button>
    
    洗牌列表
    
    我认为更多的是你在重复列表中添加/删除元素,而不是实际移动元素?希望这是有道理的


    很抱歉,它保存了错误的项目-

    ,但即使我将添加/删除到重复列表中,这是否意味着添加/删除的项目将作为“离开动画”或“进入动画”处理?问题是,新项目或保留项目可以很好地与动画配合使用,而已经未更改的项目可以在没有动画的情况下更改其位置。我认为是这样的:移动-当相邻项目被过滤掉时,会导致重新排序。我的过滤器删除第一个元素,它会导致列表重新排序!
    <button ng-click="shuffle()">Shuffle the List</button>