2009-06-08 9 views
2

次のコードは、メニュー項目の上にマウスを置くと、サブメニューを表示します。タイマーを使用しているので、サブメニュー項目をすばやく選択しないと、サブメニュー項目は消えます。私はむしろ、あなたが上にマウスを置くか、別のメインメニュー項目をクリックするまで、それが上にあるメニューオプションをハイライトさせ、別のメインメニュー項目をクリックするまで、サブメニュー項目を保持するでしょう:jQueryホバーメニュー

$(document).ready(function(){ NiftyメニューA」、 "小さな上部の透明"); ニフティ( "#のoutcontent"、 "透明媒体下");アクションでそれを見るために

function hideSubMenu() { 
    $("#sub-menu-content").fadeOut('slow'); 
    hideSubMenu.timeout = 0; 
} 

$('#menu a').hover(function() { //start function when any link is clicked 
    if (hideSubMenu.timeout) clearTimeout(hideSubMenu.timeout); 
    hideSubMenu.timeout = 0; 
    $("#sub-menu-content").hide(); 

    var html = '<ul>' + $(this).next('ul.sub-menu').html() + '</ul>&nbsp;'; 
    $("#sub-menu-content").html(html); //show the html inside .content div 
    $("#sub-menu-content").fadeIn('fast'); //animation 
},function(){ 
    hideSubMenu.timeout = setTimeout(hideSubMenu, 800); 
}); //close click(

$('#sub-menu-content').hover(function() { 
    if (hideSubMenu.timeout) clearTimeout(hideSubMenu.timeout); 
    hideSubMenu.timeout = 0; 
},function(){ 
    hideSubMenu.timeout = setTimeout(hideSubMenu, 800); 
}); //close click(
}); //close $(

http://cruisecontrolledmarketing.com/test/welcome/login ユーザー:会員パスワード:再販

ありがとう!

答えて

7

何かをハッキングするのではなく、hoverIntent pluginをチェックするのはどうですか?

+0

私はそれをチェックアウトします。私はかつてそれを見たことがない。 –

+0

私はそれをお勧めします。私たちは常時サイトの生産に使用しています。ニースで構成が簡単で、必要なものを正確に実行する必要があります。 – ajm

+0

私はそれを働かせようとしています..私はちょうどホバーイベントを置き換えるだろうか? hoverIntent(config、function()){ また、jquery.event.hover-1.0も見つかりました。これは、$( '#menu a')です。 –

0

私は、メニュー、ポップアップ、ホバー、そしてあなたが想像できるどんな種類のエフェクトでも価値のある、あらゆる種類のコンセプトをほぼ含んだ素晴らしいページを見つけました。私はそれらのいくつかを拡張し、より良いメニューを作ることは信じられないほど有用であることが分かった。

45 beautiful jQuery Menu plugins and tutorials

関連する問題