Хочешь уверенно проходить IT-интервью?
Мы понимаем, как сложно подготовиться: стресс, алгоритмы, вопросы, от которых голова идёт кругом. Но с AI тренажёром всё гораздо проще.
💡 Почему Т1 тренажёр — это мастхэв?
- Получишь настоящую обратную связь: где затык, что подтянуть и как стать лучше
- Научишься не только решать задачи, но и объяснять своё решение так, чтобы интервьюер сказал: "Вау!".
- Освоишь все этапы собеседования, от вопросов по алгоритмам до диалога о твоих целях.
Зачем листать миллион туториалов? Просто зайди в Т1 тренажёр, потренируйся и уверенно удиви интервьюеров. Мы не обещаем лёгкой прогулки, но обещаем, что будешь готов!
Реклама. ООО «Смарт Гико», ИНН 7743264341. Erid 2VtzqwP8vqy
Что такое DOM?
Еще несколько десятков лет назад все веб-сайты в сети были незамысловатым набором простых текстовых страниц, ничем не отличавшихся друг от друга. Теперь же, у современных интернет-ресурсов тщательно продуманный интерфейс с адаптивными элементами, отзывчивыми кнопками, параллаксной прокруткой и бог знает с чем еще.
Чтобы создать такой, хорошо продуманный и привлекательный для пользователей сайт, все его файлы, включая разметку, стили и скрипты должны тесно взаимодействовать друг с другом, и объектная модель документа (или DOM ) предоставляет нам такую возможность.
Чтобы сделать HTML-документ более динамичным и интерактивным, скрипт должен иметь доступ к его содержимому, одновременно отслеживая действия пользователя.
DOM – это древовидное представление веб-сайта, загружаемого в браузер, в виде серии объектов, вложенных друг в друга. Оно определяет логический каркас документа, способы доступа к нему и управления им. С его помощью мы можем создавать документы, перемещаться по их структуре, а также добавлять, изменять или удалять его элементы и их содержимое.
Работа с DOM
Давайте посмотрим на простой пример, показывающий, как скрипт может получить доступ к содержимому HTML-документа через DOM:
Это HTML-форма входа на сайт. Корень любого DOM-дерева – сам HTML-документ (document
). А уже от корня, в зависимости от структуры нашей HTML-разметки – тянется вверх ствол с ветками. Вы можете получить доступ ко всем его элементам с помощью набора свойств и методов, предоставляемых DOM API. Но что это за методы? Кроме уже использованного в примере, существуют еще несколько полезных функций. Разберем те из них, что чаще всего применяются в проектах:
Методы querySelector() и querySelectorAll()
Нужны для доступа к одному или нескольким элементам из DOM, соответствующим одному или нескольким селекторам CSS, например:
Метод createElement()
Используйте этот метод для создания указанного элемента и вставки его в DOM:
Метод getElementById()
Этот метод необходим для получения элемента из документа по его уникальному атрибуту id
:
Метод getElementsByTagname()
Используйте этот метод для доступа к одному или нескольким элементам по имени их HTML-тега:
Метод setAttribute()
Этот метод используется для установки или изменения значения атрибута элемента.
Предположим, у нас есть атрибут id
, содержащий значение favorite
. Но мы хотим изменить значение на usual
. Сделаем это, используя рассматриваемый метод:
Также рассмотрим несколько часто применяемых при работе с DOM свойств:
Свойство innerHTML
А это свойство необходимо применять в тех случаях, когда нам нужен доступ к текстовому содержимому элемента. Небольшой пример с выводом текста с помощью рассматриваемого свойства:
Выведет в консоль:
Свойство addEventListener()
Это свойство прикрепляет прослушиватель событий к вашему элементу. Синтаксис будет такой:
Здесь:
elem
– элемент, которому назначен обработчик события.
event
– некое событие, допустим, click
.
hndlr
– функция, обрабатывающая это событие.
Методы для работы с узлами DOM
Каждый элемент на HTML-странице называется узлом, даже объект document
, представляющий весь документ. Вы можете получить доступ к любому из них, используя следующие свойства объекта node
:
node.childNodes
– обращается к дочерним узлам выбранного родителя.node.firstChild
– доступ к первому дочернему элементу выбранного родителя.node.lastChild
– доступ к последнему дочернему элементу выбранного родителя.node.parentNode
– обращается к родителю выбранного дочернего узла.node.nextSibling
– доступ к следующему последовательному элементу (родному элементу) выбранного элемента.node.previousSibling
– обращается к предыдущему элементу (родному брату) выбранного элемента.
Для чего нужен DOM
DOM – это нисходящее представление всех элементов, составляющих веб-страницу. Это интерфейс, через который скрипт взаимодействует с вашим HTML. Для чего вам знать это? Учитывая, что самым часто производимым действием при работе с DOM является поиск (выбор) определенных элементов, вам необходимо понимать среду, в которой вы желаете что-то поменять. Ведь не имея представления об устройстве DOM-дерева и понимания связи между его узлами – найти что-то в нем будет крайне затруднительно.
Комментарии