2017-09-09 4 views
0

は、私は、次があります。addClassアニメーションとremoveClassアニメーションに異なる遷移遅延時間を与える方法は? addClassとremoveClassを使用して

$("#sidebar-bottom-feature").addClass("display-none"); 

予想通りこれは、要素をフェード。

それが戻っ

$("#sidebar-bottom-feature").removeClass("display-none"); 

#sidebar-bottom-feature { 
    border-radius: 0; 
    border: 0; 
    padding: 10px 40px; 
    -webkit-transform: rotate(-90deg); 
    -ms-transform: rotate(-90deg); 
    transform: rotate(-90deg); 
    -webkit-transform-origin: 0 0; 
    -ms-transform-origin: 0 0; 
    transform-origin: 0 0; 
    position: absolute; 
    bottom: 0; 
    left: 0; 
    width: 250px; 
    transform: 1s all; 
    height: 80px; 
    margin-bottom: -80px; 
    background-color:#F1F1F1 
} 
.display-none { 
    opacity: 0 
} 

をエレメント交換に来るときそれから私はフェードアウトが1s all後に発生するが、その後フェードイン(removeClass)が3秒の遅延の後に発生します。 3s alldisplay-noneに追加すると、addClassremoveClassの両方に3秒の遅延が追加されます。

どのように時間を変えることができますか?

削除してから別のクラスを追加しようとしましたが、移行した古いクラスを削除しましたが、移行遅延時間の変更はありませんでした。

大きなガイダンスがあります。

答えて

1

あなたはまた、.delay()を利用することができますsetTimeout

// wait 1 second before hiding the element 
setTimeout(function(){ 
    $("#sidebar-bottom-feature").addClass("display-none"); 
}, 1000); 

// wait 3 seconds before showing the element 
setTimeout(function(){ 
    $("#sidebar-bottom-feature").removeClass("display-none"); 
}, 3000); 

を利用することができます。

あなたがショーを使用して非表示にした場合、あなたもクラスを追加する必要はありません。

$("#sidebar-bottom-feature").delay(1000).hide(0); 
$("#sidebar-bottom-feature").delay(3000).show(0); 
+0

私は十分に感謝することはできません - 良い一日あなたに:-) – davvv

関連する問題