asp.net活动菜单项突出显示

时间:2013-08-06 05:07:03

标签: javascript asp.net menu

我有一个母版页和一些子页面,我希望当我从菜单打开一个页面折叠并保持突出显示 我有这个结构

     <ul id="menu"  class="unstyled accordion collapse in">


                <li id="MenuDash" class="accordion-group">
                    <a data-parent="#menu"
                         data-toggle="collapse" class="accordion-toggle" data-target="#dashboard-nav">
                        <i class="icon-dashboard icon-large"></i> Dashboard <span
                            class="label label-inverse pull-right">2</span>

                    </a>
                    <ul class="collapse" id="dashboard-nav">
                        <li><a href="/Default.aspx"><i class="icon-home"></i> Dash Board</a></li>
                        <li><a href="/Status.aspx"><i class="icon-bar-chart"></i> Status</a></li>
                    </ul>
                </li> </ul>

所以活动类是

"active"

并且在课程中折叠了

"collapse in"

我在default.aspx中尝试了此代码,但它没有用

<script type="text/javascript">
   $('#dashboard-nav').removeClass("collapse");
   $('#dashboard-nav').addClass("collapse in");
</script>

2 个答案:

答案 0 :(得分:1)

正如所示的注释使您的类成为单个单词名称,也包装您的代码以确保在页面上dom元素为aldy之后执行js。

此外,不是删除类添加类,而是尝试使用类似的东西切换jquery toggle event ...

$('#dashboard-nav li').toggle(function() {
     alert('First handler for .toggle() called.');
}, function() {
     alert('Second handler for .toggle() called.');
});

答案 1 :(得分:0)

在每个aspx页面上都使用它。

   <script type="text/javascript">
       $(document).ready(function () {
        $('#dashboard-nav').addClass('selected');
        $('.menu li a').hover(function () {
            $('.menu li a').removeClass('selected');
            $(this).addClass('active');
        });
        $('.menu li a').mouseleave(function () {
            $('#dashboard-nav').addClass('selected');
        });
    });
   </script>

和CSS

.menu li a:hover,.menu li a.selected
{
background-color :  #E5E5E5;
padding-top:5px;
padding-bottom:5px;
padding-left:10px;
color:Black ! important;
font: normal 12px Trebuchet MS;

}

您可以根据您的要求进行修改