0

我正在尝试在 ul 元素上进行基本悬停,这将显示 li 元素。我在这里尝试过:http: //jsfiddle.net/ExWQp/3/

问题是当我将一个 li 元素留给另一个元素时,功能 mouseout 被激活。

你能帮我解决这个问题吗?谢谢

4

2 回答 2

2

使用$.mouseenter()and$.mouseleave()代替$.mouseover()and $.mouseout()

$(document).ready(function($) {
    var $menulist = $('.ssmenu'),
        $menuitems = $menulist.find('li'),
        $colls = $('.collections');

    var hoverin = function() {
        $menulist.fadeIn();
    };

    var collenter = function() {
        $menuitems.fadeIn();
    };

    var menuleave = function() {
        $menuitems.fadeOut();
    };

    $menulist
        .hover(hoverin, menuleave)
        .bind('mouseleave', menuleave);

    $colls.bind('mouseenter', collenter);
});

http://jsfiddle.net/userdude/ExWQp/6/

于 2012-06-16T11:34:33.563 回答
2
$('.ssmenu').hover(function () {
    $('.ssmenu li').fadeIn();        
},
function () {
    $('.ssmenu li').fadeOut();        
});    

$('.collections').bind('mouseover', function () {
    $('.ssmenu li').fadeIn();
});

http://jsfiddle.net/ExWQp/4/

于 2012-06-16T11:37:39.260 回答