Я хотел бы получить # из непосредственных детей, которые есть у элемента, а затем получить класс ребенка по определенному индексу. Что-то вроде:Как получить доступ к дочернему элементу из детей()?
var index = 25;
var children = $("#myListElement").children();
if (index < children.length) {
if (children[index].hasClass("testClass")) {
alert("hi!");
}
}
Я думаю, что синтаксис для .children() в порядке, но как я могу получить индексированный элемент из них в стиле Jquery?
Благодаря
«дети содержит массив простых узлов DOM» это вводит в заблуждение. 'children()' - это набор jQuery, как и все остальное. Если вы используете '.eq (3)' вместо '[3]', он вернет элемент DOM, завернутый в jQuery, как и ожидалось. Любой результирующий набор jQuery при обращении с помощью '[]' возвращает элемент DOM. –
В основном 'children.eq (index) .hasClass (" testClass ")' как ваш ответ должен быть написан. –
@Doug - утверждение «содержит массив простых узлов DOM» не совсем корректно. jQuery возвращает объект *, подобный массиву *, который содержит узлы DOM, индексированные по числу, как в массиве. Кроме того, исправьте меня, если я ошибаюсь, но не было ли времени, когда jQuery действительно поместил все узлы DOM по умолчанию, прежде чем он упал в пользу производительности? – Anurag