0

他のdivがクリックされたときにdivを表示/非表示にする小さなスクリプトを書いていますが、2番目のdivをクリック可能にできません。

これまでの私のコードは次のとおりです。

$(document).ready(function(){
    $('div#ordontia').click(function(){
        $(this).next('div#ordontia2').slideToggle("slow");
    });
});

http://jsfiddle.net/65AK2/1/

「ボタン」がクリックされるたびに、説明付きの新しい div がテーブルの下部に表示されます。(下部の青い div)。別のボタンをクリックすると、前の説明が閉じて、別の説明が同じ場所で開きます。(まだ実装していません)

助けてくれてありがとう!

4

6 に答える 6

2

を使用しないでください$.next。現在の要素の兄弟のみが選択されます。

一致した要素のセット内の各要素の直後の兄弟を取得します。セレクターが指定されている場合、そのセレクターに一致する場合にのみ、次の兄弟を取得します。
jQuery ドキュメント: .next()

通常のものを使用します。

$('div#ordontia2').slideToggle("slow");
于 2013-10-28T17:41:06.520 に答える
2

一意の ID を持っているのに、なぜ next で要素を選択したいのですか?

$(document).ready(function(){
    $('div#ordontia').click(function(){
        $('div#ordontia2').slideToggle("slow");
    });
});

さらにdivを追加すると、より一般的になります。

$(document).ready(function(){
    $('.botaomedicina').click(function(){
        $('#'+$(this).attr('id')+'2').slideToggle("slow");
    });
});

他のすべてを閉じて:

$(document).ready(function(){
    $('.botaomedicina').click(function(){
        $('.botaomedicinadescription').slideUp("slow");
        $('#'+$(this).attr('id')+'2').slideToggle("slow");
    });
});
于 2013-10-28T17:41:27.367 に答える
1
$(document).ready(function(){
    $('div#ordontia').click(function(){
        $('div#ordontia2').slideToggle("slow");
    });
});

削除this;)

于 2013-10-28T17:41:20.810 に答える