كيف يمكنني استبعاد هذه العناصر من اختيار jQuery؟
-
05-07-2019 - |
سؤال
jQuery الخاص بي:
$("ul.dropdown ul").slideDown("slow");
$("ul.dropdown ul ul").children().hide();
وهذا يتسبب في عرض المحدد الثاني لعرضه لفترة وجيزة. كيف يمكنني استبعاد المجموعة الثانية من المجموعة الأولى ، وأظهر فقط المجموعة الأولى؟
HTML الخاص بي:
<ul class="dropdown">
<li style="margin: 0px">
<span id="header">
<img src="back.gif" alt='background' style="border:none;" />
<span style="position: absolute; top: 5px; left: 2px;">
<img src="button.gif" style="border:none;" />
</span>
<span style=" position: absolute; top: -5px; left: 70px;">
<p style="background-color: white; width: 200px; height: 20px; font-size: 1.2em; border: 2px solid blue">Menu</p>
</span>
</span>
<ul class="sub_menu">
<li><a href="#">Artificial Turf</a></li>
<li><a href="#">blah</a></li>
<li id="1">
<a id="1.1" href="#">Batting Cages</a>
<ul id="2">
<li><a href="#">Indoor</a></li>
<li><a href="#">Outdoor</a></li>
</ul>
</li>
<li><a href="#">Benches & Bleachers</a></li>
<li><a href="#">Communication Devices</a></li>
<li><a href="#">Dugouts</a></li>
<li><a href="#">Fencing & Windscreen</a></li>
<li><a href="#">Floor Protectors</a></li>
<li><a href="#">Foul Poles</a></li>
<li><a href="#">Netting</a></li>
<li><a href="#">Outdoor Furniture & Storage</a></li>
<li><a href="#">Outdoor Signs</a></li>
<li><a href="#">Padding</a></li>
<li><a href="#">Scoreboards</a></li>
<li><a href="#">Shade Structures</a></li>
<li><a href="#"> - VIEW ALL - </a></li>
</ul>
</li>
</ul>
المحلول
ربما سيعمل هذا:
$("ul.dropdown > li > ul").slideDown("slow");
">" يعني فقط الأطفال المباشرين (http://docs.jquery.com/selectors/child#parentchild). طالما أن وريثك مثل هذا (الذي ، بعد تحريرك الآن ، يبدو أنه كذلك):
<ul>
<li>
<ul>
..
من المرجح أن تعمل. نأمل أن تكون الاختلافات ذات الصلة واضحة ...
نصائح أخرى
هذا بالضبط ما طريقة "لا" هو ل:
$('ul.dropdown ul').not('ul.dropdown ul ul').slideDown('slow');
هذا يمكن أن يعمل.
$("ul.dropdown ul:not(ul > ul)").slideDown("slow");
$("ul.dropdown ul ul").children().hide();
لا تنتمي إلى StackOverflow