0

好的,首先,这是我的网站:http ://songfreek.com

网站加载后,“用户”菜单打开,其余关闭。现在,当我打开另一个菜单(比如说“Radio DJ”选项卡)时,“User”菜单和“Radio DJ”菜单都会打开。

我想这样做,如果我点击“Radio DJ”菜单,那么“用户”菜单就会关闭,依此类推。

这是我从“用户”菜单到“电台 DJ”菜单的代码。

                        <!-- USER -->
                        <li class="nav-header">
                            <a href="#" data-toggle="collapse" data-target="#userMenu">
                                <font color="#333333">User</font> <i class="icon-angle-down"></i>
                            </a>
                            <ul style="list-style: none;" class="collapse in" id="userMenu">
                                <li class="active"><a href="#"><i class="icon-home"></i> Home</a></li>
                                <li><a href="#"><i class="icon-envelope-alt"></i> Messages <span class="badge badge-info">4</span></a></li>
                                <li><a href="#"><i class="icon-cogs"></i> Settings</a></li>
                                <li><a href="#"><i class="icon-comment"></i> Shoutbox</a></li>
                                <li><a href="#"><i class="icon-user"></i> Staff List</a></li>
                                <li><a href="#"><i class="icon-flag"></i> My Infractions</a></li>
                                <li><a href="#"><i class="icon-exclamation-sign"></i> Rules &amp; Regulations</a></li>
                                <li><a href="#"><i class="icon-off"></i> Logout</a></li>
                            </ul>
                        </li>

                        <!-- RADIO DJ -->
                        <li class="nav-header">
                            <a href="#" data-toggle="collapse" data-target="#radioDJMenu">
                                <font color="#34CCFF">Radio DJ</font> <i class="icon-angle-down"></i>
                            </a>
                            <ul style="list-style: none;" class="collapse" id="radioDJMenu">
                                <li><a href="#">Information &amp; Stats</a></li>
                                <li><a href="#">DJ Says</a></li>
                                <li><a href="#">Request Line</a></li>
                                <li><a href="#">Timetable</a></li>
                                <li><a href="#">Banned Songs</a></li>
                            </ul>
                        </li>
4

1 回答 1

0

好的,让我们在 songfreek.com 上以 3 比 3 的形式进行吧……

您可以通过将函数分配给collapse“显示”事件来关闭任何其他打开的菜单,如下所示:

    $('.collapse').on('show', function (e) {

        // hide open menus
        $('.collapse').each(function(){
          if ($(this).hasClass('in')) {
              $(this).collapse('toggle');
          }
        });
    })

当任何菜单打开时,都会触发“显示”事件。任何其他打开的菜单都将包含in该类,因此collapse('toggle')可用于关闭它们。

我已经在http://bootply.com/61710更新了 Bootply来演示这一点。

于 2013-05-19T16:32:07.040 回答