0

jsfiddleはここにあります:http://jsfiddle.net/M86nA/

コードはこれです:

$('div.wrap').click(function(){
   var $minY = $('div.imgur-wrap').height();
   if ($minY = 280) {
      $('div.wrap').animate({height: 500});
   }else{
      $('div.wrap').animate({height: 280});
   }
});​

ifを実行するときに新しい高さ(500)があるためだと思いますか?これどうやってするの?

ありがとう!

編集:「=」を「==」に置き換え、セレクターで「imgur」を削除すると修正されます。

4

2 に答える 2

3

この例のようにjQuery.toggle()を使用できます

$('div.wrap').toggle(function() {
    $(this).animate({
        height: 500
    });
}, function() {
    $('div.wrap').animate({
        height: 280
    });
});​

.toggle()jQueryは、で提供される関数を次々と「切り替え」ます。280pxが初期状態であるため、最初に高さ500を発射し、次に280を発射してから再び発射します。

于 2012-06-23T00:20:32.413 に答える
1

=現在のコードを使用して、クラス参照とをに修正します==

変化する

var $minY = $('div.imgur-wrap').height();

var $minY = $('div.wrap').height();

参照用の完全なコード:

$('div.wrap').click(function() {
    var $minY = $('div.wrap').height();
    if ($minY == 280) {
        $('div.wrap').animate({
            height: 500
        });
    } else {
        $('div.wrap').animate({
            height: 280
        });
    }
});​

デモを見る

于 2012-06-23T00:26:33.160 に答える