0

当我单击链接时,我想更改导航栏中的 Active 类(使用引导程序)。

这是我的html:

            <div class="navbar navbar-fixed-top navbar-inverse">
            <div class="navbar-inner">
                <div class="container">
                    <button type="button" class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                        <span class="icon-bar"></span>
                    </button>
                    <a class="brand" href="#">Phonebook</a>
                    <div class="nav-collapse collapse">
                        <ul class="nav">
                            <li class="active"><a href="#">Home</a></li>
                            <li><a href="#about">About Us</a></li>
                            <li><a href="#contact">Contact</a></li>
                        </ul>
                    </div>
                </div>
            </div>
        </div>

我已经尝试了从网站上的答案中获得的以下 jQuery 代码,但它不起作用。

这是代码:

        $(document).ready(function () {
        $('.nav li a').click(function (e) {
            var $this = $(this);
            if (!$this.hasClass('active')) {
                $this.addClass('active');
            }
            debugger;
            e.preventDefault();
        });
    });
4

1 回答 1

1

You're complicating it :

$(document).ready(function () {
    $('.nav li').on('click', function (e) {
        $(this).addClass('active').siblings().removeClass('active');
    });
});

FIDDLE

and why would you add hash links to the anchors, and then use preventDefault in the event handler ?

于 2013-07-20T22:07:53.797 回答