【发布时间】:2012-04-05 03:52:22
【问题描述】:
我有以下html结构
<div>
text 1
<div>
text 2
<div>
text 3
<div>
text 4
</div>
</div>
</div>
</div>
使用下面的 jquery
$('div').hover(
function() {
$(this).addClass("hover");
},
function() {
$(this).removeClass("hover");
}
);
当我将鼠标悬停到带有文本 4 的最后一个 div 时,上述所有 div 元素都会获得类悬停。
有没有一种聪明的方法可以只将悬停类放在最后一个悬停的 div 元素上?因此,当我将鼠标悬停到文本 3 时,只有周围的 div 会获得悬停类。
我不想将文本包装在新元素中,因为应用情况比这要复杂一些。我也不能使用 CSS3。
【问题讨论】:
-
你能给最里面的 div 一个类名吗?
-
你也要选择父母吗?还是只有实际悬停的元素?
-
我真的很想用 stopPropagation() 来做到这一点,但似乎无法让它工作。
-
@idrumgood:这里也一样 :(
-
不,层次结构是动态的,并且会随着 ajax 的使用而变化