检查鼠标是否在JQuery中的多个元素上?

时间:2012-03-23 19:15:04

标签: jquery css menu elements

所以我正在制作一个下拉菜单,遇到了一个问题......这是代码......

$('#layer2_cell1').hide();

$("#layer1_cell1").mouseenter(function () {
    $('#layer2_cell1').show();
    $("#storage").data('airplanesmain', '1');
});
$("#layer1_cell1").mouseleave(function () {
    $("#storage").data('airplanesmain', '0');
    var subcell = $("#storage").data('airplanessubcell');
    if (subcell == '0') {
        $('#layer2_cell1').hide();
    }
});
$("#layer2_cell1").mouseenter(function () {
    $("#storage").data('airplanessubcell', '1');
});
$("#layer2_cell1").mouseleave(function () {
    $("#storage").data('airplanessubcell', '0');
});

如果我的鼠标位于layer1_cell1和layer2_cell1之外,我正试图隐藏layer2_cell1,这似乎就像它会这样做但是dosnt。救命啊!

1 个答案:

答案 0 :(得分:0)

您好我在这里编写了一个仅限CSS的菜单http://jsfiddle.net/P8ZH6/3/,因为不需要使用JavaScript。

如果您需要在菜单上方显示动态内容,可以将JavaScript事件附加到菜单项。

这样的事情可行。

(文档)$。就绪(函数(){

$(".menu li").hover(function(){
   $("#dynamic_content").html($(this).parents(".menu_1").find("span").html() + "->" + $(this).find("a").text());
})

$(".menu .menu_1 span").hover(function(){
   $("#dynamic_content").html($(this).html());
})

$(".menu li, .menu .menu_1 span").mouseout(function(){
   $("#dynamic_content").html("");
 });                                

});

希望这适合你。