Jquery悬停在有孩子的元素上

时间:2012-03-28 11:42:03

标签: jquery hover

我有这段代码:

<div class"classNameFather">
    <div class="className">
        <div class="className">
             <div.... (unlimited elements)
        </div>
    </div>
</div>

$('.className').hover(function() {
    //do hover stuff
}, function() {
    //do mouseout stuff
});

$('.classNameFather').hover(function() {
    //do hover stuff
}, function() {
    //do mouseout stuff
});

所以我要做的就是当我徘徊最后一个元素或第二个或第三个......所有的父母都没有盘旋......

只有第一个元素具有不同的类名,并且没有儿童限制....

由于

1 个答案:

答案 0 :(得分:10)

使用event.stopPropagation()阻止事件冒泡..

$('.className').hover(function(e) {
    e.stopPropagation();
    //do hover stuff
}, function(e) {
    e.stopPropagation();
    //do mouseout stuff
});

$('.classNameFather').hover(function(e) {
    e.stopPropagation();
    //do hover stuff
}, function(e) {
    e.stopPropagation();
    //do mouseout stuff
});

更新

根据您要完成的实际效果,您可能需要使用.mouseover().mouseout()方法,而不是.hover()使用的方法( .mouseenter().mouseleave() 的)。

可以在此演示http://jsfiddle.net/gaby/Zse5V/

中看到差异