We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

Общая информация

Возвращает список типа NodeList, состоящий из всех элементов, которые являются потомками для элемента, над которым была выполнена функция и удовлетворяющим условию выборки.

Синтаксис

elementList = baseElement.querySelectorAll(selectors);

где

  • elementList — результирующий список объектов типа element (результаты).
  • baseElement — элемент, над которым выполняется функция.
  • selectors — текст селектора для выбора нужных элементов.

Примеры

Этот пример возвращает список всех элементов с тегом p, которые находятся в теле документа:

var matches = document.body.querySelectorAll('p'); 

Этот пример возвращает список всех элементов с тегом p, которые находятся в элементе-контейнере с тегом div (на любом уровне вложенности) и имеют класс 'highlighted':

var el = document.querySelector('#test');
var matches = el.querySelectorAll('div.highlighted > p'); 

Этот пример возвращает список всех элементов iframe, которые имеют атрибут "data-src":

var matches = el.querySelectorAll('iframe[data-src]'); 

Заметки

Функция выбрасывает исключение SYNTAX_ERR, если текст селектора неправильный.

querySelectorAll() был представлен как часть WebApps API.

Строка указанная в качестве текста селектора, должна соответствовать синтаксису CSS.

Помните, что возвращённый в качестве результата список NodeList не рекомендуется для использования в циклах (например, в for(...)) в качестве массива, т.к., это не массив в «традиционном» понятии Javascript, а объект типа NodeList, который, хоть и схож по свойствам с массивом, но не является таковым в полной мере (не поддерживает все методы, доступные массиву), так что будьте осторожны.

Поддержка браузерами

We're converting our compatibility data into a machine-readable JSON format. This compatibility table still uses the old format, because we haven't yet converted the data it contains. Find out how you can help!

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari (WebKit)
Базовая поддержка 1 3.5 (1.9.1) 8 10 3.2 (525.3)
Feature Android Firefox Mobile (Gecko) IE Phone Opera Mobile Safari Mobile
Базовая поддержка (Да) 1.0 (1.9.1) ? ? (Да)

Ссылки на спецификации

Смотрите также

Метки документа и участники

Внесли вклад в эту страницу: overnight, torbasow, romadoma
Обновлялась последний раз: overnight,