私のメニューはホバーイベントで機能します。サブメニューにカーソルを合わせると、独自の子メニューが開きますが、他のサブメニューにカーソルを合わせると、前のサブメニューの子が自動的に閉じます。私の動作中のjsfiddleを確認してください:
1 に答える
0
次のようなことを試すことができます:
$(".topmenu .sub-menu .parent a").mouseover(function() {
if($(this).parent().attr('id') != $("li .open").attr('id')
&& $(this).parent().has("ul").length > 0) {
if($("li .open").length > 0) {
$("li .open").children("ul").slideToggle(1000);
$("li .open").toggleClass("open");
}
$(this).parent().children("ul").slideToggle(200);
$(this).parent().toggleClass("open");
}
});
このアプローチでは、メニューのslideUp(例:デザイン)がメニューのslideDown(例:Development)よりもかなり長い場合、「Development」がslideUpする可能性がある状況に遭遇することを覚えておいてください. 「デザイン」のslideUp。これをテストするには、「デザイン」メニューに別の項目を追加してください。
アイテムの現在のリストでは、上記の実装は正常に機能するはずです。
于 2012-10-11T07:59:56.870 に答える