0

こんにちは、私はjqueryのslideToggleを実行しようとしていますが、代わりにクリック機能付きのスライドアップとスライドダウンを使用しています。

トグルを使用したくない理由は、すべてのリンクをターゲットにして、ドロップダウンを意図していないナビゲーションをランダムにトリガーするためです。

これは私が現在持っているものです。リンクをクリックするとスライドダウンを備えた2つのクリック機能が必要であり、リンクを再度クリックするとスライドアップします。

<script>

      $('#principale li').click(function(e){
    $('.sub-menu').slideToggle();
});


</script>
4

2 に答える 2

0

これはslidetoggleに関連する問題ではありません。ランダムなナビゲーションメニュー項目を対象としていません。具体的にどれが必要かわからないだけです。クラスをセレクターとして使用しているのはそのためです。

この線:

$('.sub-menu').slideToggle();

私が思うにあなたの問題を引き起こしています。クラスをセレクターとして使用する場合、セレクターに一致する他の要素も影響を受けます。変更しようとしているものだけではありません。それらすべてに異なるIDを割り当て、クリック関数にid値を動的に渡すことができますが、$(this)を呼び出すだけで問題が解決するため、これは必要ありません。

HTMLが表示されない場合、これで解決策を見つけるのは困難ですが、メニューがリストアイテム内にネストされている場合は、これを行うことができます。

$(this).find('.sub-menu').slideToggle();
于 2013-03-20T17:06:08.233 に答える
0

これを試して

<script>
    $(document).ready(function() {
        $('#principale li').click(function(e){
            $('.sub-menu').slideToggle("slow");
        });
    });
</script>

コンセプトを適用した簡単なフィドルは次のとおりです。http://jsfiddle.net/rKKcw/

于 2013-03-20T17:01:52.170 に答える