0

これが私のおそらく(そしてうまくいけば)単純な問題です:

ナビゲーションとして画像のリストがあります。それらにカーソルを合わせると、jqueryはキャプション付きのdivをアニメーション化し、それを表示します。それはmouseoutで消えます。(正常に動作します)

画像をクリックすると、キャプションdivがさらにアニメーション化され、画像が完全にオーバーレイされます(正常に機能します)。ナビゲーション内の別の画像にカーソルを合わせると、キャプションdivもアニメーション化されます(正常に機能します)。

問題:2番目のナビゲーション画像をクリックすると、最初のナビゲーション画像(クリック)のアニメーションが消えるはずです。

これがjqueryです:

var thumbslide = $('.boxgrid.captionfull').click(function() {
   $(this).toggleClass('clicked').children('.cover').stop().animate({top: 0, height:"230px", opacity: 1}, 350);
});
$('.boxgrid.captionfull:not(.clicked)').live('mouseenter', function() {
    $(this).children('.cover').stop().animate({top: 130}, 350);
}).live('mouseleave', function() {
    $(this).children('.cover').stop().animate({top: 230}, 350);
})

これが開発サイトへのリンクです

どんな助けでも大歓迎です、ありがとう。

4

2 に答える 2

0

これは、他のクリックされたアイテムを見つけて、そのクリックされたクラスを削除する場合だけではありませんか?

var thumbslide = $('.boxgrid.captionfull').click(function() {
   $('.boxgrid.captionfull.clicked').removeClass('clicked');
   $(this).toggleClass('clicked').children('.cover').stop().animate({top: 0, height:"230px", opacity: 1}, 350);
});
于 2010-11-08T16:40:58.420 に答える
0

これにより、クラスが削除clickedされてアニメーション化され、不透明度が0.7に戻ります。

var thumbslide = $('.boxgrid.captionfull').click(function() {
   $('.boxgrid.captionfull.clicked').removeClass('clicked').children('.cover').stop().animate({top: 230, opacity: 0.7}, 350);
   $(this).toggleClass('clicked').children('.cover').stop().animate({top: 0, height:"230px", opacity: 1}, 350);
});
于 2010-11-08T16:50:28.717 に答える