0

私はJavascriptに比較的慣れていないため、次のスクリプトに問題があります:

// Keep Focus On Site Menu //
function menuFocus() {
    $('#menu').addClass('hover');
}

function menuBlur() {
    $('#menu').removeClass('hover');
}

$(document).ready(function() {
    $('#submenu-mgmt').hover(menuFocus,menuBlur);
});

$(document).ready(function() {
    $('#submenu-label').hover(menuFocus,menuBlur);
});

基本的に、ユーザーが 2 つの個別の DIV ID を使用してセカンダリ メニュー システムにカーソルを合わせている間、兄弟ではない DIV ID に「ホバー」効果を維持しようとしています。3 つの DIV ID を含むように設計しました。「#Menu」はヘッダー メニュー エリアです。'#Submenu-Mgmt' と '#Submenu-Label' は両方とも到着時には非表示になっていますが、DIV を表示/非表示にするリンクをクリックして開くことができます。

これは現在稼働中のページのためのものです。この問題によってサイトが成功したり壊れたりすることはありませんが、ユーザーのマウスがサブメニューの上に置かれている間、メニュー領域がフォーカスを失うので、いい感じです。

問題のページ: http://www.parkthevan.com/index.php .

4

1 に答える 1

1

add class 関数に追加のサブメニュー ID を追加すると、それが実行されます。ホバー クラスにクラスの非表示/表示以外の追加の表示品質がある場合は、.css も使用できます。両方をここに含めます。:) (// は JavaScript のコメントであることに注意してください) また、削除についても同じことを行う必要があります。ドキュメントの準備が必要なのは 1 回だけです。

    function menuFocus() {
       $('#menu, #submenu-mgmt, #submenu-label').addClass('hover');
       // or
       //$('#submenu-mgmt, #submenu-label').css('display', 'block');
    }

    function menuBlur() {
       $('#menu, #submenu-mgmt, #submenu-label').removeClass('hover');
       // or
       //$('#submenu-mgmt, #submenu-label').css('display', 'none');
    }

    $(document).ready(function() {
       $('#submenu-mgmt').hover(menuFocus,menuBlur);
       $('#submenu-label').hover(menuFocus,menuBlur);
    });
于 2012-12-05T19:05:16.737 に答える