gpt4 book ai didi

jquery - 想只在主菜单而不是子菜单上有 Jquery 效果

转载 作者:太空宇宙 更新时间:2023-11-03 18:46:32 25 4
gpt4 key购买 nike

很高兴来到 Stack Overflow :)

我最近为我的 WordPress 菜单实现了一些 Jquery 淡入/淡出代码。我实际上使用了找到的代码 here在这个资源。显然,它似乎是一段非常常用的 Jquery 代码。

我能够将它合并到我的 WordPress 菜单中。一切都在主导航上运行良好。但是,子菜单采用与主导航相同的高度和 Jquery 效果,这是我不想要的。我希望子菜单更细一些,并且只更改简单的背景颜色。

我的问题是如何在使用这个出色的 jquery 脚本时使主导航和子导航的样式相互独立。我已经粘贴了相关的 css 代码,希望有人能够提供一些见解。它基于标准的 wordpress 菜单 css,我希望它是不言自明的。

#access {
margin:0;
padding:0;
list-style:none;
line-height:60px;
}
#access ul {
font-size: 16px;
font-family: 'swis721_ltcn_btlight';
text-transform:uppercase;
list-style: none;
margin: 0 0 0 -0.8125em;
padding-left: 0;
display:inline-block;
text-align: center;
}
#access li {
float:left;
background:url(images/default.jpg) no-repeat center center; /
width:150px;
height: 50px;
position:relative;
}
#access li a {
z-index:20;
display:block;
position:relative;
color:#777;
border-right: 1px dotted #cccccc;
}

#access li .hover {
background:url(images/over.jpg) no-repeat center center;
position:absolute;
width:150px;
height:50px;
left:0;
top:0;
z-index:0;
display:none;
}

#access ul ul {
height: 17px !important;
-moz-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
-webkit-box-shadow: 0 3px 3px rgba(0,0,0,0.2);
box-shadow: 0 3px 3px rgba(0,0,0,0.2);
display: none;
float: left;
margin: 0;
position: absolute;
top: 50px;
left: 0;
width: 150px;
z-index: 99999;
}

#access ul ul a {
background:#ccc;
border-top: 1px dotted #ffffff;
border-bottom: 1px dotted #ffffff;
color: #FFF;
font-size: 12px;
font-weight: normal;
line-height: 1.1em;
text-align: left;
padding: 5px 10px;
width: 130px;
height: 17px;
}

#access ul ul :hover > a {
height:17px !important;
}

基本上,当我尝试更改“#access ul ul a”或“#access ul ul :hover > a”中的子菜单样式时,主导航的高度和悬停效果会保留下来。

我已经包含了指向问题示例的链接。如果将鼠标悬停在“事件和服务”上,您会看到子菜单问题。

http://streetsmartetiquette.com/wordpress/about/

下面也添加了 Jquery 代码:

jQuery(document).ready(function($) {

//Append a div with hover class to all the LI
$('#menu-navmenu li').append('<div class="hover"><\/div>');


$('#menu-navmenu li').hover(

//Mouseover, fadeIn the hidden hover class
function() {

$(this).children('div').stop(true, true).fadeIn('1000');

},

//Mouseout, fadeOut the hover class
function() {

$(this).children('div').stop(true, true).fadeOut('1000');

}).click (function () {

//Add selected class if user clicked on it
$(this).addClass('selected');

});

});

感谢大家的帮助!

最佳答案

您好,我认为您的问题出在您的 css 中,您没有将菜单中的第一个 ul li 和子菜单中的 ul li 分开

创建新的 css

#access .sub-menu li {  
height: 18px; // the height you need for the submenu or anything else you ant to change
}

#access .sub-menu li .hover {
height: 18px;// the height you need for the hover effect from the jquery
}

关于jquery - 想只在主菜单而不是子菜单上有 Jquery 效果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16245540/

25 4 0