2016-05-17 7 views
0

をアニメーション化しない私はJavaScriptでアニメーションをプログラムしようとしていると私は私のプログラムでは問題jQueryのアニメーション()関数は

を抱えている私は<label>アニメーション化しようとしているのmargin-topを、それはdoesnの "私はそれが欲しいと思います。

$('label').animate({marginTop: '0%'},500); 

margin-top CSSプロパティの変更が、それがスムーズに移動するのではなく、目の瞬きで起こります。

ここに私のコードです:

HTML

<label id="menu-button-label"><input type="checkbox" id="menu-button"></label> 

JS:

$($('#menu-button-label').click(function() { 
     if($('#menu-button').is(':checked')) { 
      $('#menu-button-label').animate({marginTop: '0%'},500); 
     } 
    }); 
+0

と要素は、そもそもマージントップを持っていないのに役立ちますと思いますか? jQueryはアニメーションの開始点を必要とします – adeneo

+3

https://jsfiddle.net/2h3qt60o/ –

+1

@FastSnailのように解決されるか、トランジションのトグルクラスで行われます:) –

答えて

0

私はあなたのコード内のいくつかの変更をしましたが、基本的に、今、私は1ダイブでmarginTopを適用していますし、この潜水の中にあなたのレーベルがあります。

が怒鳴るのコードを見てください、私はあなた

$(function(){ 
 
    //alert(3); 
 
    $('#menu-button-label').animate({marginTop: '20%'},1500); 
 
    }); 
 

 
$('#menu-button-label').click(function() { 
 

 
     if($('#menu-button').is(':checked')) { 
 
      } 
 
      $('.info').animate({ marginTop: '0px'}, 1000); 
 
     
 
    });
.item { 
 
    background: #ccc; 
 
    width: 200px; 
 
    height: 300px; 
 
    
 
} 
 
.info{ 
 
    margin-top: 100px; 
 
    background: red; 
 
    }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="item"> 
 
    <div class="info"> 
 
      <label id="menu-button-label">JS:</label> 
 
      <input type="checkbox" id="menu-button"> 
 
    </div> 
 
    
 
</div>

関連する問題