jquery - 为当前菜单设置 css 事件类

标签 jquery asp.net css asp.net-mvc master-pages

我尝试编写一个函数来设置菜单的当前事件状态,但我的菜单需要 2 个字段

class="current"and class="current selectedLava"

我的菜单:

<nav>
<ul class="sf-menu">
    <li><a href="Default.aspx">Home</a>
        <ul>
            <li><a href="About.aspx">Home Cinema</a></li>
        </ul>
    </li>
    <li><a href="Home_Movie.aspx">Movie</a>
        <ul>
            <li ><a href="List_Movie.aspx">List Movie</a></li>
            <li ><a href="abc.aspx">List</a></li>
    </li>

</ul><!-- end menu -->

我的意思是当我访问 Home_Movie.aspx 时,它将是

        <li class="current selectedLava"><a href="Home_Movie.aspx">Movie</a>
        <ul>
            <li><a href="List_Movie.aspx">List Movie</a></li>
            <li ><a href="abc.aspx">List</a></li>
    </li>

当我访问 List_Movie.aspx 时,它将是

        <li class="current selectedLava"><a href="Home_Movie.aspx">Movie</a>
        <ul>
            <li class="current"><a href="List_Movie.aspx">List Movie</a></li>
            <li ><a href="abc.aspx">List</a></li>
    </li>

简单易懂:

1:http://s30.postimg.org/cx4ks87y9/image.png

2:http://s30.postimg.org/p09wfsj0h/image.png

最佳答案

我认为您将 highlightActiveMenuItem 方法替换为:

highlightActiveMenuItem = function () {
    var url = window.location.pathname.substr(6);    
    $('nav li a[href="' + url + '"]').parent().addClass('current');
    if ($('nav li a[href="' + url + '"]').parent().parent().hasClass('sf-menu'))
    {
      $('nav li a[href="' + url + '"]').parent().addClass('selectedLava');
    }
    else
    {
      $('nav li a[href="' + url + '"]').parent().parent().parent().addClass('current selectedLava');  
    }
}

或者为顶级菜单项使用特定类以避免三重 parent()

关于jquery - 为当前菜单设置 css 事件类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20584088/

相关文章:

css - 我怎样才能使我网站上的幻灯片居中显示在屏幕中央?

jquery - 预加载图像 & [object HTMLImageElement]

jquery - 单击下拉菜单时清除复选框并隐藏图像

javascript - 在全日历中禁用外部事件的突出显示

c# - 表单验证 : Where’s my auth cookie gone?

javascript - CSS3 从新位置的 Angular 过渡

javascript - 当您使用 javascript 或 jquery 将鼠标悬停在上方时,如何使图像或按钮发光?

mysql - 当用户选择的选项传输时,避免 MySql 中出现符号错误

asp.net - 如何在 Sitecore 中创建 Web 服务

javascript - 随机图像生成