angular如何写淡入间隔2秒后淡出?

当$scope.localMes.length>1时黑色提示框淡入出现,两秒后淡出消失!
图片描述

app.controller("localCon",function($scope){
    $scope.localMes=[
        {
            name:"陈琪",
            onSw:false,
            phone:"15766666666",
            local:"辽宁省沈阳市和平区胜利大厦"
            
        },
        {
            name:"张卓亿",
            onSw:false,
            phone:"1222222218",
            local:"辽宁省沈阳市和平区胜利大厦"
        }
    ];
    $scope.swith=function($index){
            
            $scope.localMes[$index].onSw=!$scope.localMes[$index].onSw;
        };
    $scope.remove=function($index){
            if($scope.localMes.length>1){
                $scope.localMes.splice($index,1);
            }else{
                $
            }
        };
});
阅读 4k
3 个回答

这就用JS的基本的定时器方法就可以了

        $scope.swith=function($index){
            $scope.localMes[$index].onSw=true;
            setTimeout(function(){$scope.localMes[$index].onSw=false},2000);
        };

angular没看过
说一下vue中的思路,如果不适用请见谅
设置一个变量为,绑定到那个元素的opacity属性
启动定时器改变的这个值就行了

还是直接用css3的动画来写吧,不要用上面说的方法了

说说我的两种思路,仅参考。

CSS3

1.先写css样式,如:.fadeOut{} //animate or transition

2.定义一个变量,通过ng-class来判断这个变量改变css触发过度效果。

directive

定义一个 ng 的 directive ,directive 需要传入一个值,通过值来判断是否显示过度动画。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题