2017-05-02 17 views
1

ボタンをクリックしたときに実行されたアニメーションがあります。このボタンをクリックするたびに、このアニメーションが発生します。どうすれば達成できますか?ボタンを押すたびに同じアニメーションを再作成します。 Angular.js

http://jsfiddle.net/8jmnpn2u/2/

<div id='div1'></div> 
    <br> 
    <button ng-click='show()'>show</button> 

    $scope.show= function(){ 
    document.getElementById('div1').classList.add('animate'); 
    } 


    div{ 
    display:inline-block; 
    background:yellow; 
    width:250px; 
    height: 250px; 
    transition: all linear 1s; 
    opacity:0; 
    } 

    div.animate{ 
    opacity:1; 
    } 
+0

は私の答えを助け、あなたをしましたか?あなたは答えを受け入れるでしょうか?そうでない場合は、さらに問題を説明しますか? –

答えて

0

アニメーションはCSSを使用して、JavaScriptがanimateクラスを追加したときに適用されているので、あなたは再度追加、クラスを削除する可能性がフェードアウトするアニメーションを待つことをお勧めしますクラス。

あなただけの必要に応じて、その後「のsetTimeout()」関数の内部で.add('.animate')ラインを入れて、最初の.remove('animate')にあなたの関数を改正します:

$scope.show= function(){ 
    document.getElementById('div1').classList.remove('animate'); 
    setTimeout(function(){ document.getElementById('div1').classList.add('animate'); }, 2000); 
}; 
関連する問題