jQuery/JavaScript-鼠标悬停在另一个元素上时,触发器悬停在该元素上
这可能吗?我的HTML如下所示:jQuery/JavaScript-鼠标悬停在另一个元素上时,触发器悬停在该元素上,javascript,jquery,html,menu,mouseover,Javascript,Jquery,Html,Menu,Mouseover,这可能吗?我的HTML如下所示: <ul> <li> <a> link </a> </li> <li> <a> link </a> </li> <li> <a> link </a> <ul> <li> <a> sub-link </a> </li>
<ul>
<li> <a> link </a> </li>
<li> <a> link </a> </li>
<li> <a> link </a>
<ul>
<li> <a> sub-link </a> </li>
<li> <a> sub-link </a> </li>
<li> <a> sub-link </a> </li>
</ul>
</li>
</ul>
- 链接
- 链接
- 链接
- 子链接
- 子链接
- 子链接
基本上,当鼠标位于子菜单链接上时,我希望在父菜单链接上触发悬停CSS规则。如果使用它,也会影响父菜单链接,因为这就是鼠标指针
和鼠标移动
事件的工作方式,例如:
$("li").hover(function() {
$(this).toggleClass("active");
});
与mouseover
和mouseout
不同,事件在进入/离开子对象时不会触发,因此在您实际离开父对象之前,对父对象执行的操作不会“撤消”,这似乎是您所追求的
或者,如果您只是在进行样式设置,请使用纯CSS,例如(在IE6中不起作用):
.您可以使用parent()方法访问父节点,并切换其绑定mouseover和mouseout事件的类
$("#childnode").bind("mouseover", function() {
$(this).parent().addClass("onmouseover");
}).bind("mouseout", function() {
$(this).parent().removeClass("onmouseover");
});
解决这个问题的方法是在
元素上移动悬停样式,但我不确定这是否是一个好主意:将悬停在li而不是a上……嗨。我知道,但我不是说启用鼠标悬停事件,我只是希望:hover样式应用于父链接,即使鼠标不在其上。@Alex-如果您将:hover
放在
上,您可以这样做:oh nvm:D tx,我将使用li:hover@Alex-确保你有CSS,就像它在演示的右边一样…你有一个示例页面,我可以看一下。谢谢你,实际上我需要的只是“>”CSS的东西。我不知道:)
$("#childnode").bind("mouseover", function() {
$(this).parent().addClass("onmouseover");
}).bind("mouseout", function() {
$(this).parent().removeClass("onmouseover");
});