Ответ 1
$('#LeftScrollableDiv').children().first();
Это должно быть легко, но я не могу этого сделать.
У меня есть элемент div с id "LeftScrollableDiv", и я пытаюсь найти под ним первый дочерний элемент:
$("#LeftScrollableDiv:first-child");
<div id="LeftScrollableDiv:first">
<table></table>
</div>
Но результат равен нулю. Любая помощь?
$('#LeftScrollableDiv').children().first();
$("#LeftScrollableDiv > :first-child");
:first-child
проверяет, является ли его субъектом первым дочерним элементом его родителя. В этом случае вы пытаетесь выбрать элемент с id #LeftScrollableDiv
, который является первым дочерним элементом его родителя. Все селектора :
просто фильтруют предыдущий выбор, они не выбирают никаких новых элементов.
В jQuery, к сожалению, нет метода .firstChild
, поэтому вы всегда должны сначала выбрать всех детей, а затем вынуть первый.
Возможный селектор для этого:
"#LeftScrollableDiv > :first"
Для меня не работало следующее:
$('#LeftScrollableDiv').children().first();
Если вы найдете то же самое, вы можете обработать объект, возвращенный методом children(), как массив.
Чтобы получить первый элемент:
$('#LeftScrollableDiv').children()[0]
Чтобы получить последний элемент:
$('#LeftScrollableDiv').children()[$('#LeftScrollableDiv').children().length-1]