Как получить элемент во всех фрагментах документа - PullRequest
0 голосов
/ 14 октября 2019

У меня есть страница, которая содержит несколько фрагментов документа. Я хочу получить все элементы со страницы, которые соответствуют селектору, как это.

document.querySelectorAll('iframe')

Но он не возвращает элементы из внутренних фрагментов документа. Я обнаружил, что могу использовать это:

hostElement.shadowRoot.querySelectorAll('iframe')

Но мне нужны все элементы и я не знаю, какие элементы на странице являются хостами. Как я могу получить все совпадающие элементы по фрагментам документа из "верхнего" документа? Я использую селеновый вебдрайвер, поэтому, если есть какое-то решение, связанное с ним, этого также будет достаточно.

1 Ответ

0 голосов
/ 14 октября 2019

Единственный способ, который я нашел, это запросить все элементы и для каждого, у которого есть теневой корень, переключиться на него, а затем запросить нужные элементы. Работает и не так медленно, как я ожидал, но мне не нравится это решение, оно неэффективно. Если у кого-то есть лучшее решение, было бы неплохо.

...