2017-03-01 6 views
2

私はCSSのアニメーション/トランジションは実際には良くありませんし、ホバーのようなアニメーションをJSで実装するために正確に何を使用しなければならないのか分かりません。JSホバーのようなアニメーション

データを変更するときにアニメーションを呼び出して強調表示し、0.5秒後にデフォルト状態に戻します。そして、同じ要素に何度も何度もやり遂げることができます(ページの表示/非表示|表示)。

+0

あなたはneccessarily、JSでそれを行うために必要なのですか? –

+0

とは何ですか?まだ何か試してみましたか? –

+0

私はVueJSを使用していますので、JSからアニメーションを呼び出してブラウザのビューの変更をハイライト表示したい –

答えて

0

は、次のコード

HTMLに

<div id="item">hover me</div> 

CSS

#item{ 
    transition : all 0.5s ease-out; 
    background : #fff; 
    color  : #000; 
} 

.hovered{ 
    background : #000 !important; 
    color  : #fff !important; 
} 

JS

item.onmouseenter = function(){ 
    this.classList.add('hovered'); 
} 

item.onmouseleave = function(){ 
    setTimeout(function(){ 
     this.classList.remove('hovered'); 
    }.bind(this),1000) 
} 

チェックアウトこのフィドルを考えてみましょう:https://jsfiddle.net/1ty551gL/

それはデータの変化に自動的に作業を取得するには:

JS

function onchange(){ 

    item.classList.add('hovered'); 

    setTimeout(function(){ 
     item.classList.remove('hovered'); 
    },1000); 

} 
+1

これは正確です私が必要なもの!マウスを入力せずに、どうすればそれを起動できますか?私は機能からそれを活性化したいと思います –

+0

投票を検討し、この答えをマークすることを確認してください、どの機能が必要ですか? – levi

+1

'

{{status}}
'と記述してください - これは私のHTMLの内容です。これはjsでデータを更新する方法です: 'if(...){ ... this.status = '新しいデータ' callAnimationHere( ) } '。 'item.onmouseenter'と' item.onmouseleave'ではなく、 –

関連する問題