angularjs - AngularJS 的不同转换

标签 angularjs angularjs-directive angularjs-animation

如何使用 AngularJS 启用不同的转换。可以说,我的网络应用程序中有一个侧边栏。如果用户单击按钮 X,侧边栏应该很快消失,如果用户单击另一个按钮,侧边栏应该慢慢消失。

我认为,这可以通过在其中一次单击后设置转换选项值,然后更改侧边栏的可见性状态(由转换指令监视)来实现。

但这对我来说似乎有点糟糕。有没有通用的方法来做到这一点?

最佳答案

我会做这样的事情。为侧边栏设置默认过渡,然后应用具有不同过渡速度的类。

这是我的意思的 jsFiddle:

http://jsfiddle.net/rd13/eTTZj/149/

HTML:

<div ng-controller="myCtrl">
    <div class="sidebar" ng-class="{'slide-out':boolChangeClass}">
        Sidebar
    </div>
    <button ng-click="click()">Toggle Sidebar</button>
</div>

Angular :

function myCtrl($scope) {
    $scope.click = function() {
        $scope.boolChangeClass = !$scope.boolChangeClass;
        $scope.$apply();
    }
}

CSS:

.sidebar {
    -moz-transition: left .1s;
    -webkit-transition: left .1s;
    -o-transition: left .1s;
    transition: left .1s;
    width: 100px;
    background-color: blue;
    position: absolute;
    top: 0px;
    bottom: 0px;
    left: -100px;
}

.slide-out {
    -moz-transition: left 1s;
    -webkit-transition: left 1s;
    -o-transition: left 1s;
    transition: left 1s;
    left: 0px;

}

关于angularjs - AngularJS 的不同转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17108611/

相关文章:

javascript - 如何在 Angular 的 GET 请求中使用 URL 参数?

javascript - AngularJS : How to access Parent's Named Controller inside Javascript files and vice versa?

javascript - 自定义指令限制用户输入特殊字符 : angular Js

javascript - 防止输入任何附加字符

css - 在 flexbox 计算高度后渲染传单图

javascript - AngularJS $scope 没有在 DOM 中更新

angularjs - 如何为自定义指令实现 ng-change

javascript - 在 $animate .then() 方法中访问和更新 Controller 模型 - 使用 'this'

angularjs - 两种不同的路线变化动画

javascript - 将单独的 JSON 数据组绑定(bind)到用户 ID 号 AngularJS