如何使用jQuery和javascript向元素添加类?

时间:2013-09-27 04:29:26

标签: javascript jquery html navigation

我有以下给出的HTML代码,以便将导航添加到我的网站。 (注意列表是嵌套的)

<div id="navigation">
       <ul>
        <li><a href="default.html">Home</a></li>
        <li><a href="about.html">About us</a></li>
        <li><a href="help.html">Help</a></li>
        <li><a href="#">DropDown</a>
          <ul>
            <li><a href="#">Link 1</a></li>
            <li><a href="#">Link 2</a></li>
            <li><a href="#">Link 3</a></li>
          </ul>
        </li>
        <li class="last"><a href="#">A Last Link Text</a></li>
      </ul>
</div>

我想以新颜色显示当前活动的页面链接。因此相应的列表项应该具有活动类,并且我使用CSS来更改颜色。例如,如果 default.html 是当前打开的页面,则代码应为<li class=“active”><a href="default.html">Home</a></li>

如何在jQuery和JavaScript中实现这一点(我需要两个不同的网站)。 谁能帮我?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

获取您的网址/解析它:

var pathname = window.location.pathname;

然后添加课程:

Jquery:

$(element).addClass('classname');

JS:How do I add a class to a given element?

答案 1 :(得分:0)

试试这个

$(document).ready(function () {
    var url = location.href;
    $('#navigation li a').each(function () {
        var thisHref = this.getAttribute('href');
        if (thisHref !== '#' && url.indexOf(thisHref) !== -1) {
            $(this.parentNode).addClass('active');
            return;
        }
    });
});