使用 jquery 获取前一个 p 标签来更改背景
我有以下问题。我有一个 css 下拉导航,如果导航的下拉部分有鼠标悬停,我希望“导航标题”的背景保持其悬停时获得的背景颜色。问题是,如果用户继续移动并将鼠标悬停在下拉列表上,“导航标题”的悬停状态将恢复为“正常”。这就是为什么我认为我可以使用 jquery 来改变它。
但不幸的是我不知道如何选择特定的元素。
以下是导航示例:
<ul>
<li>
<p class="naviHead first">Finanzen</p>
<ul>
<li><a href="http://www.spardaxx.de/kredit" title="SparDaxx Ratenkredit">Ratenkredit</a></li>
<li><a href="http://www.spardaxx.de/baufinanzierung" title="SparDaxx Baufinanzierung">Baufinanzierung</a></li>
<li><a href="http://www.spardaxx.de/altersvorsorge" title="SparDaxx Riester Rente">Riester Rente</a></li>
</ul>
</li>
</ul>
因此,如果用户将鼠标悬停在 p 标签上,则会打开下拉菜单 ul。现在,如果有人将鼠标悬停在以下 ul 上,我想更改 p 的背景颜色..
这是我的 jquery 到目前为止,
$().ready(function() {
$('#TopNav ul ul').mouseover(function() {
$(this).parents('p.naviHead').filter(':first').css("background", "black");
})
});
我想解决方案很简单,但我不知道.. 因此,感谢任何帮助。谢谢! :)
i have the following problem. I have a css dropdown navigation and if there is a mouseover on the dropdown part of the navigation I want the background of the "navigation heading" to keep its background color that it gets when there is a hover on it. Problem is if the user moves on and hovers over the dropdown, the hover state of the "navigation heading" goes back to "normal". That's why I thought I could use jquery to alter it.
But unfortunately I don't know how to select the specific element.
Here is an example for the navigation:
<ul>
<li>
<p class="naviHead first">Finanzen</p>
<ul>
<li><a href="http://www.spardaxx.de/kredit" title="SparDaxx Ratenkredit">Ratenkredit</a></li>
<li><a href="http://www.spardaxx.de/baufinanzierung" title="SparDaxx Baufinanzierung">Baufinanzierung</a></li>
<li><a href="http://www.spardaxx.de/altersvorsorge" title="SparDaxx Riester Rente">Riester Rente</a></li>
</ul>
</li>
</ul>
So if the user hovers over the p tag, the dropdown ul opens. Now I want to change the background color of the p if someone hovers over the following ul..
here is my jquery so far
$().ready(function() {
$('#TopNav ul ul').mouseover(function() {
$(this).parents('p.naviHead').filter(':first').css("background", "black");
})
});
I guess the solution i simple, but I have no idea.. So any help is appreciated. Thx! :)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
或者如果你有更复杂的布局那么 -
可能会更好
or if you have a more complex layout then -
may be better