AngularJS动画导航

AngularJS动画导航,angularjs,angularjs-animation,Angularjs,Angularjs Animation,我有一个像这样的HTML模型 <div id="headbar" ng-swipe-left="ToogleMenu()"> <div id="menu" ng-hide="menuTogglestate"> <ul> <li><a href="#">Menu</a></li> .... </ul> </div> </div>

我有一个像这样的HTML模型

<div id="headbar" ng-swipe-left="ToogleMenu()">
  <div id="menu" ng-hide="menuTogglestate">
    <ul>
      <li><a href="#">Menu</a></li>
      ....
    </ul>
  </div>
</div>

  • ....

我如何在我的控制器中的Togglemenu功能中访问#菜单点或调用我在模型中参考菜单的ng动画?还是必须在ng hide from#菜单的顶部添加动画?由于我有jQuery的背景,我对AngularJS动画的工作方式有点迷茫。但是我根本不想使用jQuery,否则我永远不会用正确的方法学习。为了记录在案,我想使用javascript,而不是css关键帧动画。

假设您的模块变量是
app

app.animation('#menu', function() {
  return {

    beforeAddClass : function(element, className, done) {
      if(className == 'ng-hide') {
        jQuery(element).animate({left: -200}, done);
      }
      else {
        done();
      }
    },

    removeClass : function(element, className, done) {
      if(className == 'ng-hide') {
        jQuery(element).css({left: -200}).animate({left: 0}, done);
      }
      else {
        done();
      }
    }

  };
});

你的意思是想在向左滑动时触发
ToogleMenu()
,并将
MenuToggleEstate
更改为
false
,然后显示
#menu
?不,我知道这是怎么回事,但是我想在show和on hide中使用滑动效果来设置菜单的动画,如从左-200向左:0,然后从0返回到-200(如果需要隐藏)当调用
ToogleMenu()
时,您想滑出菜单,但这与
ng hide=“menuTogglestate”无关
?我想将其绑定到显示和隐藏参数,如图所示,但使用javascript动画而不是css关键帧动画。所以我需要jQuery来完成这项工作?@Johnny000是的,您需要一些DOM操纵库来完成这项工作。