【发布时间】:2012-12-11 08:45:35
【问题描述】:
我的问题是:
我有一个下拉菜单,我希望当我悬停菜单时,文本颜色会发生变化,而当我悬停子菜单时,两者的悬停状态都会保持不变。我使用此代码:
$("ul li").hover(function () {
$(this).stop().animate({ backgroundColor: "white"}, 500);
},
function () {
$(this).stop().animate({ backgroundColor: "black"}, 400);
});
}
在菜单和子菜单中悬停时为背景颜色设置动画。
我想将悬停时的文本颜色更改为(菜单和子菜单不同,动画颜色不同)。为此我使用以下代码:(子菜单示例,对于菜单示例,将选择器更改为 $('ul.menu li a')
$('ul.submenu li a').hover(function () {
$(this).css({color:'#FFFFFF'});
},
function () {
$(this).css({color:'#00FF00'});
});
这一切正常,但是当我将子菜单悬停时,菜单返回到原始颜色状态(因为鼠标悬停在菜单悬停时被激活)。
我想要的是,当我悬停子菜单时,菜单中的悬停状态也保持活动状态。
我尝试了很多东西,但都给我带来了问题,唯一有效的是 css,但我也需要动态控制文本颜色。
有效的 CSS:
ul li:hover a {
color: #FFF;
}
(使用这个 css 代码,我用 css 控制菜单颜色,当我悬停子菜单时,菜单保持活动状态,但子菜单适用于 jquery .hover)。
有人可以帮忙吗?谢谢!
HTML 菜单:
<ul class="menu">
<li><a href="#">text</a></li>
<li><a href="#">text</a>
<ul class="submenu">
<li><a href="#">text</a></li>
<li><a href="#">text</a></li>
<li><a href="#">text</a></li>
</ul>
</li>
<li><a href="#">text</a>
</ul>
【问题讨论】:
-
你能提供完整的代码和菜单的标记吗?很难了解要部署的内容。
-
我用 Html 标记编辑我的问题。谢谢
标签: javascript jquery css hover drop-down-menu