سؤال

يا شباب، لقد قمت بإنشاء هيكل القائمة التالي:

<div id="menu">
<ul>
<li><a href="#">Main Item1</a></li>
<li><a href="#">Main Item2</a></li>
<li><a href="#">Main Item3</a>
    <ul>
    <li><a href="#">SubItem for MainItem3</a></li>
    <li><a href="#">2ndSub for MainItem3</a></li>
    </ul>
</li>
<li><a href="#">Main Item4</a>
    <ul>
    <li><a href="#">SubItem for MainItem4</a></li>
    <li><a href="#">2ndSub for MainItem4</a></li>
    </ul>
</li>
</ul>
</div>

لذلك هذا هيكل قائمة بلدي. الآن أريد استخدام jQuery الأحدث لجعل تأثير الشرائح / الملاط.

أفعل بهذه الطريقة:

$(document).ready(function(){
    $('#menu ul li:has(ul)').mouseenter(function(){         
                $('#menu ul li ul').slideDown('slow');                              
    }).mouseleave(function(){
        $('#menu ul li ul').slideUp('slow');
    });
});

لقد حاولت أولا Mouseover و Mouseout، ولكن عندما استخدمت هذه الوظيفة، عمل الماوس وعندما أردت أن أذهب إلى الفرعية، ممنقطعت القائمة، لكن حدث ماوس المستخرج يحدث. الآن عملت، ولكن عندما أحكم على سبيل المثال على البند الرئيسي 3، فإن الغواصات أيضا من البند الرئيسي 4 مفتوحة وإغلاق في Mouseout؟!؟! كيف نقول فقط عناصر القائمة من EG الرئيسية البند 3 oder البند الرئيسي 4 ؟؟

آمل أن تفهم ما أعنيه؟

شكرا

هل كانت مفيدة؟

المحلول

$(function(){
    $('#menu ul li:has(ul)').hover(function(){                 
            $(this).find('ul').slideDown('slow');                                                          
    }, function(){
            $(this).find('ul').slideUp('slow');
    });
});
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top