click
機能で左にスライドする列があります。次に、列が滑って幅が変更されるように、コンテナにw
のクラスを追加します。私がしようとしているのは、w
のクラスを、toggle
の関数でラップして取り除いても、そのクラスを取り除くときにのクラスを追加しますが、コンテナにはまだw
のクラスが含まれていて、e
。思考?トグルに基づいてクラスを削除/追加する
FIDDLE: http://jsfiddle.net/QDUQk/1926/
.container {
border: 1px solid #000;
width: 200px;
}
.container.e {
width: 80%;
}
.container.w {
width: 100%;
}
<div class="togl">Menu</div>
<div class="col">
SLIDE ME SLIDE ME PLX PLX
</div>
<div class="container">
</div>
$('.togl').click(function() {
if ($('.container').is(':visible')) {
$('.col').toggle('slide', {
direction: 'left'
}, 1000, function() {
$('.container').addClass('w');
$('.container').removeClass('e');
});
} else {
$('.col').toggle('slide', {
direction: 'left'
}, 1000, function() {
$(".container").removeClass('w');
$(".container").addClass('e')
});
}
});
@coding_questionを参照してください。[可視セレクター]彼らは文書内のスペースを消費している場合(https://api.jquery.com/visible-selector/)_」の要素が見えると考えられている目に見える要素は持っています。 'visibility:hidden'または' opacity:0'の要素は、レイアウト内のスペースを消費するため、可視と見なされます。 "_ http://jsfiddle.net/QDUQk/ 1928/ – guest271314
、ありがとうございました。私は.isについて読むことができます。 –
代わりに 'hasClass()'を使うことを検討してください – RizkiDPrast