0

リスト内のどのコンテナーが既に開いていて、まだ閉じられているかを調べる可能性はありますか?

現時点では、特定の の div でslideDown()slideDown()、およびを使用していますが、これらのクラスを使用せずに他のすべての div を開きたいaddClassclass="section_hdl_aktiv"

ここにJSの一部があります:

if (state == "") {
    jQuery('#app-control-list ul li ul').slideDown();
    state = "open";
    jQuery('#app-control-list ul li').addClass("section_hdl_aktiv");
    console.log(state); 
} else if (state == "open") {   
    jQuery('#app-control-list ul li ul').slideUp(); 
    jQuery('#app-control-list ul li').removeClass("section_hdl_aktiv");
    state = "closed";   
    console.log(state);             
} else if (state == "closed") {
    jQuery('#app-control-list ul li ul').slideDown();
    jQuery('#app-control-list ul li').addClass("section_hdl_aktiv");
    state = "open";
    console.log(state);
} 

誰かがアイデアを持っていますか?

4

2 に答える 2

0

はい。jQueryを使用すると、次のようなステートメントを記述できます...

if($('#app-control-list').is(':visible')) { ... }

また

if($('#app-control-list').css('display') == 'none')) { ... }

あなたが投稿したコードを見ると、あなたが何をしようとしているのか正確にはわかりませんが、HTMLを投稿できればそれは役に立ちます。

于 2013-03-20T17:54:40.370 に答える
0

やってみました

$("#app-control-list ul li").not("section_hdl_aktiv").each(function() {
    $(this).slideDown()
}

これで、section_hdl_aktivクラスのないすべての要素が見つかり、それらを下にスライドさせる必要があります。

于 2013-03-20T17:54:56.747 に答える