0

したがってtoggleClass、divが押されたときに、いくつかのdivのクラスを変更する(背景を変更する)必要があります。別のdivが押されたら、bgを通常に戻し、を閉じて".subtitle"、押した新しいdivを切り替える必要があります。

現在、閉じる機能と開く機能は正常に機能していますが、背景は変更されていません。

標準クラスはですが、他の背景のみを含むもの.titleもあります。.title.close

ここで助けてもらえますか?

CSS: 
.title: contains the normal bg
.title.open: contains the "open" bg
.title.close: contains the bg of title(the normal bg)

jQuery
$(document).ready(function()
{
    $(".title").click(function()
    {
        var $element = $(this);

        //What I've tried
        $('open').toggleClass('');
        $('.subtitle').hide(500);

//This is changing the bg, and show the ".subtitle" you've pressed
        $element.toggleClass('open');
        $element.children('.subtitle').toggle(500);
    });
});
4

1 に答える 1

3

切り替えたくないが、特に現在の状態に関係なくクラスを追加または削除したい場合は、すべてのクラスを使用.addClass()または.removeClass()クリアすることもできます。いくつかの例:

// remove the "open" class from a particular element
$element.removeClass("open");

// remove the "open" class from all elements that have it
$(".open").removeClass("open");
于 2013-03-07T09:09:27.967 に答える