显示使用Jquery默认选择的CSS菜单项

七月普通

我已经使用CSS和HTML创建了一个菜单栏。菜单栏也包含子菜单。

我可以在主菜单项等的悬停上显示菜单项。但是现在,我需要菜单项2(或一个菜单项)在默认情况下(在页面加载后)及其相关子菜单进行悬停/选择。默认情况下也会显示菜单项。请同样指导我。

我尝试使用Jquery在第一个项目上添加一个类:

$(document).ready(function(){
  $("get the id of the menu item").click(function(){
       $(this).parent().find("id of the menu item").addClass('class to be added');   
  }); //but what should be written in the class so that menu item is active and its sub menu items are shown by default

});

HTML代码:

<ul id="menu-main" class="menu"><li id="menu-item-24" class="menu-item menu-item-type-custom menu-item-object-custom current-menu-item current_page_item menu-item-home menu-item-24"><a href="#">Test1</a></li>
  <li id="menu-item-25" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-25"><a href="#">Test2</a>
<ul class="sub-menu">
 <li id="menu-item-267" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-267"><a href="#">Sub Menu1</a></li>
</ul>
</li>
<li id="menu-item-27" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-27"><a href="#">Test3</a>
<ul class="sub-menu">
<li id="menu-item-33" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-33"><a href="#">S1</a></li>
<li id="menu-item-34" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-34"><a href="#">S2</a></li>
<li id="menu-item-30" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-30"><a href="#">S3</a></li>
<li id="menu-item-278" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-278"><a href="#">S4</a></li>
<li id="menu-item-281" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-281"><a href="#">S5</a></li>
</ul>
</li>
<li id="menu-item-31" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-31"><a href="#">Test4</a></li>
<li id="menu-item-258" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-258"><a href="#">Test5</a></li>
<li id="menu-item-253" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-253"><a href="#">Test6</a></li>
</ul>

和CSS:

ul.sub-menu{position:relative;
z-index:40;}
ul#menu-main ul {
display: none;
}

ul#menu-main li:hover > ul {
display: block;background-color: red;
} ul#menu-main {



position: relative;
display:inline-table;
top: 42px;
position: relative;
float:right;
margin-bottom: 0px;
clear: both;
padding: 0 0 0 20px;
background: transparent!important;
list-style: none;
height: 60px;
font-family: BebasNeueRegular, Helvetica, Arial Narrow, sans-serif;
font-size: 18px;
}
 ul#menu-main:after {
 content: ""; clear: both; display: block;
}
ul#menu-main li {
float: left;
line-height: 60px;
z-index: 40;
margin-left: 15px;
}

 ul#menu-main li a:hover {
    color: #fff;
background: #f29919;

}
ul#menu-main ul li{ border-bottom:1px solid #eee;}
ul#menu-main ul li a:hover {
color: #818181;
background: #eee;

}


ul#menu-main li a {
display: block;
font-family: BebasNeueRegular, Helvetica, Arial Narrow, sans-serif;
padding: 0 20px;
color: #818181;
text-decoration: none;
}
ul#menu-main ul {
border-radius: 0px; padding: 0;
position: absolute; top: 100%;
}
ul#menu-main ul li {
float: none; 

position: relative;
list-style:none;
/*width: 180px;*/
line-height: 37px;
margin-left: 0px;
}ul#menu-main ul li:first-child{border-top: 1px solid white;}

ul#menu-main ul ul li a:hover {
color:white;
}

ul#menu-main ul ul {
position: absolute; left: 100%; top:-1px;
}
ul#menu-main li.current-menu-item > a{
color: #fff;
}


ul#menu-main ul ul li:hover a{
color: #333333;
}
伊戈尔·斯考丁(Igor Skoldin)

您是否真的需要jQuery?

您的菜单在悬停时打开,让我们找到打开菜单的部分:

ul#menu-main li:hover > ul {
  display: block;background-color: red;
}

然后在此处添加另一个类以使其处于活动状态:

ul#menu-main li:hover > ul,
ul#menu-main li.menu-item-active > ul {
  display: block;background-color: red;
}

将新添加的menu-item-active类添加到我们要激活的元素中:

<li id="menu-item-25" class="menu-item menu-item-active menu-item-type-post_type menu-item-object-page menu-item-has-children menu-item-25"><a href="#">Test2</a>
  <ul class="sub-menu">
     <li id="menu-item-267" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-267"><a href="#">Sub Menu1</a></li>
  </ul>
</li>

并且当您加载页面时,该元素将处于活动状态。

但是,当用户将鼠标悬停在其他元素上时,您可能想删除此类,因此在这里我们将添加一些jQuery:

$('ul#menu-main li:not(.menu-item-active)').hover(function() {
    $('.menu-item-active').removeClass('menu-item-active');
});

这是一个有效的小提琴:http : //jsfiddle.net/LL3a55b3/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

使用CSS和SVG的Diamond菜单项

来自分类Dev

使用CSS更改活动菜单项的文本颜色

来自分类Dev

MVVM中的子菜单项选择

来自分类Dev

显示选择的菜单项

来自分类Dev

菜单项悬停时的CSS显示子菜单

来自分类Dev

使用jQuery突出显示活动菜单项

来自分类Dev

选择子菜单项时,它会突出显示父菜单下的所有项目

来自分类Dev

使用CSS更改所选菜单项的颜色

来自分类Dev

如何使用Wordpress Walker显示父菜单项的描述?

来自分类Dev

如何在WordPress图片库中使用jQuery选择下拉菜单项?

来自分类Dev

使用PhantomJS选择菜单项

来自分类Dev

CSS:底部的菜单项

来自分类Dev

显示点击菜单项

来自分类Dev

如何修复使用OpenOffice时显示的菜单项?

来自分类Dev

如何修复使用OpenOffice时显示的菜单项?

来自分类Dev

用户选择图像并在悬停时更改背景颜色时,jQuery突出显示菜单项带有图像

来自分类Dev

选择菜单项

来自分类Dev

jQuery高亮显示当前菜单项错误

来自分类Dev

jQuery突出显示当前菜单项

来自分类Dev

jQuery保持活动菜单项突出显示

来自分类Dev

使用jQuery隐藏响应式菜单项中的子项

来自分类Dev

无法使用pywinauto选择NASPT Exerciser中的菜单项

来自分类Dev

内联显示徽标和HTML和CSS菜单项

来自分类Dev

jQuery UI手风琴无法正常工作。主菜单项显示为子菜单项

来自分类Dev

jQuery按类别选择下拉菜单项

来自分类Dev

CSS导航菜单突出显示选定的菜单项

来自分类Dev

如何使用JavaScript选择下拉菜单项

来自分类Dev

ASP.Net菜单控件在选择子菜单项时未突出显示父菜单

来自分类Dev

默认显示带下划线的菜单项