Несколько элементов с одинаковым id
Вложений: 1
Допустимо ли создавать несколько html-элементов с одинаковым id на странице? Вроде как всегда считалось, что id должен быть уникален.
Решил сделать расширение для Chrome, которое обрабатывало бы комментарии на YouTube. Собственно, сами комментарии где-то тут: https://javascript.ru/forum/attachme...d=170107476 5 id повторяются многократно. И как к таким элементам обращаться из JS? Можно ли найти элемент по не уникальному id, если локализовать область поиска только среди дочерних элементов, среди которых этот id будет встречаться только один раз? Ну то есть для каждого элемента ytd-comment-thread-renderer найти дочерний с id="comment". Как такое прописать? |
const commentNodes = document.querySelectorAll('ytd-comment-thread-renderer #comment'); Или просто const commentNodes = document.querySelectorAll('#comment'); |
Ну как то так, если найти в конкретном ytdCommentTreadRenderer
ytdCommentRenderer = ytdCommentTreadRenderer.querySelector('#comment'); |
А как с точки зрения спецификации рассматривается задание нескольких одинаковых id? Допустимо или это что-то вроде недокументированной возможности?
|
Парсер HTML не выдает сообщений об ошибках. Ему все равно один элемент с таким id или несколько. Просто рекомендуется делать id уникальным, что бы можно было сослаться на конкретный элемент.
Если сделать несколько, то ссылка (getElementById или <label for="id">) будет на первый. |
Часовой пояс GMT +3, время: 15:58. |