如何使用jquery从list html中获取第一级li listitem ...例如我正在使用draggable和sortable。我想让每个listitem可以拖动,包括--- Sally和Bike ....问题是当我选择sally时,它的孩子也被拖了。
<div id="content2">
<div>
<div>
<p>Some Text</p>
<p>Some More Text</p>
<div>Random Div</div>
<ul>
<li>Bob</li>
<li>Sally
<ul>
<li>Car</li>
<li>Boat</li>
<li>Bike
<ul>
<li>Red</li>
<li>Green</li>
<li>Blue</li>
</ul>
</li>
</ul>
</li>
<li>Larry</li>
<li>Mo</li>
</ul>
</div>
</div>
</div>
答案 0 :(得分:-1)
你没有展示你的jQuery(你真的应该这样做),但我觉得你正在做$( "#content2 li" ).draggable();
之类的事情,它正在将可拖动功能应用到li
的所有 s并且您希望它仅适用于最顶层的li
。
要做到这一点,我会给ul
一个类target-ul
,然后选择li
的直接子项ul
,如$( ".target-ul > li" ).draggable();
$( function() {
$( ".target-ul > li" ).draggable();
} );
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://code.jquery.com/ui/1.12.1/jquery-ui.min.js"></script>
<div id="content2">
<div>
<div>
<p>Some Text</p>
<p>Some More Text</p>
<div>Random Div</div>
<ul class="target-ul">
<li>Bob</li>
<li>Sally
<ul>
<li>Car</li>
<li>Boat</li>
<li>Bike
<ul>
<li>Red</li>
<li>Green</li>
<li>Blue</li>
</ul>
</li>
</ul>
</li>
<li>Larry</li>
<li>Mo</li>
</ul>
</div>
</div>
</div>
&#13;