我有一个WordPress网站,设置了一些导航。 每个父级导航链接都包含子菜单。
我想做的事,用的是绥靖的代码,如下所示。
目前,我有这个。
JQUERY
<script type="text/javascript">
jQuery(document).ready(function($){
$(".sub-menu").hide();
$(".current_page_item .sub-menu").show();
</script>
这成功地显示了所有页面的当前页面的子菜单,但我无法解决如何显示另一个子菜单,如果它的父链接被悬停。
子菜单占据了完全相同的空间,所以在悬停时,它应该隐藏当前页面的子菜单链接。
谁能帮帮我。
提前感谢。
<li id="menu-item-30" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-30"><a href="http://localhost:81/pps/">Home</a></li>
<li id="menu-item-34" class="menu-item menu-item-type-post_type menu-item-object-page current-menu-item page_item page-item-16 current_page_item menu-item-34"><a href="http://localhost:81/pps/?page_id=16">Our Services</a>
<ul class="sub-menu" style="display: block;">
<li id="menu-item-36" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-36"><a href="http://localhost:81/pps/?page_id=18">Services Sub Page One</a></li>
<li id="menu-item-37" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-37"><a href="http://localhost:81/pps/?page_id=20">Services Sub Page Two</a></li>
<li id="menu-item-35" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-35 no-cross"><a href="http://localhost:81/pps/?page_id=22">Services Sub Page Three</a></li>
<li id="menu-item-38" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-38"><a href="http://localhost:81/pps/?page_id=24">Why Us?</a>
<ul class="sub-menu" style="display: block;">
<li id="menu-item-46" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-46"><a href="http://localhost:81/pps/?page_id=44">Subpage of Why Us?</a></li>
<li id="menu-item-50" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-50 no-cross"><a href="http://localhost:81/pps/?page_id=48">Another Subpage Of Why Us?</a></li>
这是你要找的东西。
$( "li.menu-item" ).hover(function() { // mouse enter $( this ).find( " > .sub-menu" ).show(); // display immediate child }, function(){ // mouse leave if ( !$(this).hasClass("current_page_item") ) { // check if current page $( this ).find( ".sub-menu" ).hide(); // hide if not current page