如何使我的菜单链接可点击

时间:2013-06-20 15:36:15

标签: javascript jquery html

我有以下页面:http://pastebin.com/sJAN1jkk,其中包含一个下拉导航菜单,其中包含多个无序列表。

菜单的下拉部分没有问题,问题是,当点击这些列表中的任何链接时,没有任何反应。

我感觉这是在某个地方的javascript,但不是专家,我无法解释原因。

非常感谢任何帮助。

如果我错过了相关/需要的相关信息,请告诉我们,我会更新问题。

---- ----编辑

菜单HTML:

<div class="rotaWrapper">
    <div id="ddRotas" class="wrapper-dropdown-rotas" tabindex="1">
        <span id="lblRotasMenu">Rotas and absences</span>
        <ul class="dropdown">
            <li><a id="hypRotas" href="Rotas.aspx">Rotas</a></li>
            <li><a id="hypAbsence" href="Absence.aspx">Absences</a></li>
            <li><a id="hypTraining" href="Training.aspx">Training</a></li>
        </ul>
    </div>
</div>

使用Javascript:

<script type="text/javascript">

            function DropDown(el) {
                this.dd = el;
                this.initEvents();
            }
            DropDown.prototype = {
                initEvents : function() {
                    var obj = this;

                    obj.dd.on('click', function(event){
                        $(this).toggleClass('active');
                        return false;
                    });
                },
            }

            $(function() {

                var ddRotas = new DropDown( $('#ddRotas') );
                var ddWages = new DropDown( $('#ddWages') );
                var ddMessages = new DropDown( $('#ddMessages') );
                var ddDocs = new DropDown( $('#ddDocs') );
                var ddAdmin = new DropDown( $('#ddAdmin') );

                $(document).click(function() {
                    // all dropdowns
                    $('.wrapper-dropdown-rotas').removeClass('active');
                    $('.wrapper-dropdown-wages').removeClass('active');
                    $('.wrapper-dropdown-docs').removeClass('active');
                    $('.wrapper-dropdown-messages').removeClass('active');
                    $('.wrapper-dropdown-admin').removeClass('active');
                });

            });

        </script>

1 个答案:

答案 0 :(得分:1)

我认为这可能是你的问题:

obj.dd.on('click', function(event){
    $(this).toggleClass('active');
    return false;
});

您正在捕获下拉菜单的所有点击事件,然后返回false。这会停止点击事件的触发。