Javascript angular js中的动画检查元素是否正在变粗
我只是想知道有没有更好的方法?我试图找到一种方法,可以检查动画是否在元素上运行,如果它是导致动画的单击命令,那么就没有重复的元素显示或重复动画。这是它工作的代码,我使用工厂存储动画变量,如果变量为真,它将不会启动新动画 index.htmlJavascript angular js中的动画检查元素是否正在变粗,javascript,angularjs,animation,gsap,Javascript,Angularjs,Animation,Gsap,我只是想知道有没有更好的方法?我试图找到一种方法,可以检查动画是否在元素上运行,如果它是导致动画的单击命令,那么就没有重复的元素显示或重复动画。这是它工作的代码,我使用工厂存储动画变量,如果变量为真,它将不会启动新动画 index.html <!DOCTYPE html> <html lang="en" ng-app="Animate"> <head> <meta charset="UTF-8" /> <title>Js
<!DOCTYPE html>
<html lang="en" ng-app="Animate">
<head>
<meta charset="UTF-8" />
<title>Js animation</title>
<script src="lib/angular/angular.min.js"></script>
<script src="lib/angular-animate/angular-animate.min.js"></script>
<script src="lib/greensock/src/minified/TweenMax.min.js"></script>
<link rel="stylesheet" href="lib/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="lib/bootstrap/dist/css/bootstrap-theme.min.css" />
<script src="js/jsanim.js"></script>
</head>
<body ng-controller="AppCtrl as app">
<div class="container">
<div class="row-fluid">
<div class="jumbotron">
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Totam natus ipsa libero nisi labore ad pariatur consequatur quasi sint modi porro saepe, cupiditate sed asperiores ullam laudantium sit dolorem. Animi.
<div class="btn btn-warning" ng-click="app.toggleIt()">click to toggle</div>
</div>
</div>
<div class="row-fluid">
<div class="col-md-6">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Numquam, dolore. Nam reiciendis consequuntur vero assumenda facere illum non modi vitae in et perferendis labore pariatur, sed, obcaecati nisi dignissimos quae?</div>
<div class="col-md-6">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Numquam, dolore. Nam reiciendis consequuntur vero assumenda facere illum non modi vitae in et perferendis labore pariatur, sed, obcaecati nisi dignissimos quae?</div>
</div>
<div class="row-fluid">
<div class="toggle" ng-if="app.toggle">
toggle this
</div>
</div>
</div>
</body>
</html>
GSAP有一个名为
isActive()
您可以通过检查isActive()的条件来使用它
GreenSock使用它的示例:
基本上,
isActive()
指示动画当前是否处于活动状态(表示虚拟播放头正在该实例的时间跨度内活动,并且没有暂停,其任何祖先时间线也没有暂停) 您可以通过TweenMax
实现这一点
(如前所述,@Jonathan Marzullo)isActive()
TweenMax.getTweensOf()和
TweenMax.getAllTweens()
TweenMax.isTweening()
if (!TweenMax.isTweening(element)) TweenMax.to(element, duration,{prop:value});
希望有帮助。可能会放弃该服务,并对TweenMax.isTweening(元素)进行检查;在你的。切换
if(!tween.isActive()){
//only do something if the tween is not active
}
if (!TweenMax.isTweening(element)) TweenMax.to(element, duration,{prop:value});