2012-05-12 30 views
0

http://phplist.xxmn.com/menu.html如何做到這一點可以點擊顯示內容部分?

當在導航(cpanel)鼠標懸停。它會顯示它下面的相應內容。但我無法點擊它中的鏈接。有沒有辦法得到它,我知道它會使用setTimeout。但我不知道該怎麼做。謝謝。

當我改變top值small.but在IE7和IE6.i仍然無法點擊顯示內容中的鏈接。

+0

你不僅要使用setTimeout的,但要檢查,如果你在你打開菜單。我建議你看看現有的菜單代碼(谷歌),因爲它是沒有經驗很難做的事情。 –

+0

你可以發佈一些示例代碼?這樣,如果您的網站得到解決,這個問題對未來的用戶仍然有用。 – Jeroen

回答

0

您應該將內容div靠近菜單元素,並且改變它的顯示和消失方式。在菜單mouseover上顯示它並在內容mouseout上隱藏它。我認爲這將是最簡單的方法。

1

不是好辦法,但對你的工作,更好的辦法:使用CSS top = 20px

var timeout; 

$(function(){ // = document.ready 
    $("#nav ul li").hover(function() { 
     $(this).find(".sub-menu").show(); 
     clearTimeout(timeout); 
    }, function() { 

     var timeout = setTimeout(function(){ 
      $(this).find(".sub-menu").hide(); 
     },1000); // 1000 = 1 second 
    }); 
}); 
+0

沒關係。但是當我忽略了內容。節目內容無法隱藏。它必須等待1秒。有沒有辦法避免它。謝謝 – run

+0

@run不行,你必須改變你的菜單結構,或者只在下面去掉空格,如果你設置了前20位,問題就會解決 –

0
$(document).ready(function() {  
    $("#nav ul li").on('mouseenter', function() { 
     $('#nav ul li').find(".sub-menu").hide(); 
     $(this).find(".sub-menu").show(); 
    }); 

    $('.sub-menu').on('mouseleave click', function() { 
     $(this).hide(); 
    }); 
}); 
相關問題