2

jQueryナビゲーションに問題があります。ナビゲーションの通常の設定(ul> li> ulなど)がありません。ここにjsfiddleがあります:http://jsfiddle.net/RMRGH/2/ jsfiddle
の代わりにこのトピックにコードを配置する方が便利な場合は、お知らせください。ここに貼り付けます;) 。

CSSは少し混乱していますが、仕事をします=)。下にあるCMS(Joomla)のため、私はこのセットアップを使用せざるを得ません。

ナビゲーションが不安定なようで、理由を理解するのに十分なjQueryの知識がありません。

アイテムにカーソルを合わせると、次から次へと非常に速く移動します。メニューはすぐに上にスライドするため、使用できなくなります。それをいじると、私が話していることがわかります(説明するのはかなり難しいです)。

この問題の原因と解決方法を理解できません。私はここstackoverflowの人々が私を助けてくれることを望んでいました。

前もって感謝します!

4

2 に答える 2

2

あなたのフィドルを更新しました:http://jsfiddle.net/RMRGH/6/

問題は、メニューに再びカーソルを合わせてもタイムアウトが続き、メニューが閉じられたことが原因clearTimeout()だったようです。jQuery('#nav li').hover(function(){}..)

コードは次のとおりです。

jQuery(document).ready(function(){

    var timer;
    var hover;

    jQuery('.moduletable-subNav > ul').hide();

    jQuery('#nav li').hover(
        function(){
            var id = jQuery(this).attr('data-number');
            jQuery('.moduletable-subNav > ul').slideUp();
            jQuery('#submenu-'+id).stop().slideDown();
            clearTimeout(timer);
        },
        function(){
            var id = jQuery(this).attr('data-number');
            timer = setTimeout(function() { jQuery('#submenu-'+id).slideUp(); },1000);
        }
    );

    jQuery('.moduletable-subNav ul').hover(
        function(){
            clearTimeout(timer);
        },
        function(){
            var id = jQuery(this).attr('id');
            timer = setTimeout(function() { jQuery('#'+id).slideUp(); },1000);
        }
    );
});
​
于 2012-06-05T09:14:30.960 に答える
1

スライドのアップとダウンが非同期で実行され、混乱していました。以下は機能し、かなりスムーズです...ただし、それがあなたが望んでいたものかどうかはわかりません!

jQuery(document).ready(function(){
    jQuery('.moduletable-subNav > ul').hide();

    jQuery('#nav li').hover(
        function(){
            var id = jQuery(this).attr('data-number');
            jQuery('.moduletable-subNav > ul').hide();
            jQuery('#submenu-'+id).slideDown();
        },
        function(){
            var id = jQuery(this).attr('data-number');
            jQuery('#submenu-'+id).slideUp();
        }
    );
});
于 2012-06-05T09:13:58.600 に答える