10

I want a div '.whole' to animate (slide from right to left)

jQuery

$('#menu').click(function() {
      $('.whole').toggleClass('r2');
      $('#slideMenu').toggle();
});

.r2 { right: 200px }

I am not able to use the function animate() properly.

4

1 に答える 1

13

これはうまくいくはずです:

$('#menu').click(function(event) {
      event.preventDefault(); // because it is an anchor element
      $('.whole').animate({
          right: '200px'
      });
      $('#slideMenu').toggle();
});

ただし、positionプロパティはすでに CSS で設定されている必要があります。そうしないと、必要なものが正確に得られない可能性があります。

ワーキング JSFiddle

説明するには: 関数は、次のように、プロパティの JS オブジェクトを受け取ります。

{
    right: '200px',
    somethingElse: 'value',
    myboolean: true
}

これを変数に割り当ててに渡すこともできますanimate

var cssProperties = { right: '200px' }

$('#menu').click(function() {
  $('.whole').animate(cssProperties);
});

documentationで読み取り可能な他の引数を渡すことができます。

于 2013-04-25T07:07:01.140 に答える