2012-03-23 67 views
3

所以我工作的一個下拉菜單,遇到了一個問題...這裏是代碼...檢查鼠標是否在JQuery中的多個元素?

$('#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'); 
}); 

我試圖隱藏layer2_cell1如果我的鼠標是layer1_cell1的外layer2_cell1這似乎是它會做,但它dosnt。幫幫我!

+2

你可以發佈jsfiddle所需的最小html,css和js - 它可以幫助很多。另外,你有沒有考慮過純粹的CSS下拉菜單,沒有理由使用js來顯示和隱藏... – 2012-03-23 19:18:34

+1

你可以添加一個jsfiddle嗎? – Abhidev 2012-03-23 19:18:47

+0

Js小提琴是http://jsfiddle.net/Q4f2N/2/它dosnt在那裏工作,但只是採取所有的代碼,並將其上傳到這個文件系統... category_application文件夾裏面有category_application.html這是哪裏的html代碼去...還有一個名爲java的文件夾稱爲css文件夾。不要擔心圖像。 java文件夾裏面有Jquery.js和menu.js,menu.js包含java代碼。然後在CSS內部有sheet.css,其中包含css。 – 2012-03-23 19:26:13

回答

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(""); 
});         

});

希望這適用於你。

+0

http://jsfiddle.net/9vYHg/1/我已更新它,以便動態顯示內容。 – zenril 2012-03-26 02:36:06