使用';在div外部切换Jquery;这';

使用';在div外部切换Jquery;这';,jquery,html,Jquery,Html,当我单击时,我正在尝试切换移动菜单。下拉切换我希望显示下拉菜单。但是,在我的jquery中,当我使用“this”时,因为.dropdown开关在div之外,所以它不起作用。我需要使用这个,因为我将使用更多的下拉列表。有什么办法让它工作吗 如果我把“this”去掉,代码会工作,但是它会打开所有的下拉列表 <ul id="mob_nav"> <li id="dropdown" <?php if (is_tree(33)) ech

当我单击时,我正在尝试切换移动菜单。下拉切换我希望显示下拉菜单。但是,在我的jquery中,当我使用“this”时,因为.dropdown开关在div之外,所以它不起作用。我需要使用这个,因为我将使用更多的下拉列表。有什么办法让它工作吗

如果我把“this”去掉,代码会工作,但是它会打开所有的下拉列表

        <ul id="mob_nav">
                <li id="dropdown" <?php if (is_tree(33)) echo 'class="selected"'; ?>>
                    <a class="orange">Making a claim</a>
                    <div class="dropdown-toggle">&#62;</div>
                        <ul class="dropdown-menu">
                            <li><a class="" href="">Medical negligence</a>
                                <div class="dropdown-toggle-sub">&#62;</div>
                                <ul class="dropdown-menu-sub">
                                    <li><a href="">test2</a></li>
                                    <li><a href="">test2</a></li>
                                    <li><a href="">test2</a></li>
                                    <li><a href="">test2</a></li>
                                </ul>
                            </li>
                        </ul>
                </li>

                <li <?php if (is_tree(35)) echo 'class="selected"'; ?>><a href="<?php bloginfo('url'); ?>/types-of-claims" class="red">Types of claims</a></li>
                <li <?php if (is_tree(37)) echo 'class="selected"'; ?>><a href="<?php bloginfo('url'); ?>/compensation-calculator" class="blue">Compensation calculator</a></li>
                <li <?php if (is_page(320)) echo 'class="selected"'; ?>><a href="<?php bloginfo('url'); ?>/about/charity" class="purple">Charity</a></li>
                <li <?php if (is_page(10)) echo 'class="selected"'; ?>><a href="<?php bloginfo('url'); ?>/about" class="green">About</a></li>
        </ul>
<script>
    $('.dropdown-toggle').click(function(){
        $('.dropdown-menu', this).toggle();
    });

    $('.dropdown-toggle-sub').click(function(){
        $('.dropdown-menu-sub', this).toggle();
    });
</script>
    > >
    下拉菜单不是切换的子菜单。它是下一个同级菜单

    $(this).next('.dropdown-menu').toggle();
    
    另一个也一样

    $(this).next('.dropdown-menu-sub').toggle();
    

    下拉菜单不是切换的子菜单。它是下一个同级菜单

    $(this).next('.dropdown-menu').toggle();
    
    另一个也一样

    $(this).next('.dropdown-menu-sub').toggle();
    
    试试这个:

    $('.dropdown-toggle').on("click", function(){
        $(this).next('.dropdown-menu').toggle();
    });
    
    $('.dropdown-toggle-sub').on("click", function(){
        $(this).next('.dropdown-menu-sub').toggle();
    });
    
    我们将使用所需的类获取下一个元素,然后将其切换。

    尝试以下操作:

    $('.dropdown-toggle').on("click", function(){
        $(this).next('.dropdown-menu').toggle();
    });
    
    $('.dropdown-toggle-sub').on("click", function(){
        $(this).next('.dropdown-menu-sub').toggle();
    });
    

    我们正在使用所需的类获取下一个元素,然后切换它。

    您能告诉我们您尝试了什么,或者您为可能解决此问题所做的任何研究吗Hi George,上面的代码是我尝试的,我也尝试过包装下拉切换,但后来整个过程变成了一个按钮。如果我采取了“这个退出了,但是它打开了所有的下拉列表。你能告诉我们你做了什么,或者你做了什么研究来解决这个问题吗?Hi George,上面的代码是我的尝试,我也尝试过包装下拉切换,但后来整件事变成了一个按钮。如果我去掉“this”,代码会起作用,但它会打开所有下拉列表。谢谢你,你为我节省了很多时间!我不知道。下一步!@JonnyJordan总是有一条路的!很高兴我帮助了你。谢谢你,你为我节省了很多时间!我不知道。下一步!@JonnyJordan总是有一条路的!很高兴我帮助了你。