Как из списка ul выбрать только li первого уровня ?
$('.list>li').clone().appendTo('.res');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="list">
<li>First</li>
<li>Second
<ul>
<li>1</li>
<li>2</li>
<li>3 </li>
</ul>
</li>
<li>Third
<ul>
<li>1</li>
<li>2</li>
<li>3
<ul>
<li>555</li>
<li>666</li>
<li>777</li>
</ul>
</li>
</ul>
</li>
</ul>
<hr>
<div class="res"></div>
<hr> А хочется получить
<li>First</li>
<li>Second</li>
<li>Third</li>
Возможно, это не оптимально, но я бы сделал так:
temp = $('.list>li').clone();
temp.children().remove();
temp.appendTo('.res')
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="list">
<li>First</li>
<li>Second
<ul>
<li>1</li>
<li>2</li>
<li>3 </li>
</ul>
</li>
<li>Third
<ul>
<li>1</li>
<li>2</li>
<li>3
<ul>
<li>555</li>
<li>666</li>
<li>777</li>
</ul>
</li>
</ul>
</li>
</ul>
<hr>
<div class="res"></div>
на самом деле ты уже выбрал li первого уровня, просто свойство color - наследуется, если установишь color у ul, разница будет заметна
$('.list>li').css('color', 'blue');
ul {
color: green;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul class="list">
<li>First</li>
<li>Second
<ul>
<li>1</li>
<li>2</li>
<li>3 </li>
</ul>
</li>
<li>Third
<ul>
<li>1</li>
<li>2</li>
<li>3
<ul>
<li>555</li>
<li>666</li>
<li>777</li>
</ul>
</li>
</ul>
</li>
</ul>
Первый элемент и многое другое вы можете сделать через псевдокалссы , как и в CSS
$('.list>li:first').css('color', 'blue');
если вы хотите найти только первый класс лист то воспользуйтесь
.filter( ':first' );
на данный момент вы ищите все классы list
Сборка персонального компьютера от Artline: умный выбор для современных пользователей