
В этом разделе вы научитесь проверять наличие классов у элементов DOM, используя JavaScript. Каждое задание представляет собой практическую задачу, где вам дан HTML-код и фрагмент JavaScript, который нужно дополнить. Ваша цель - правильно заполнить пропущенные части кода, чтобы добиться желаемого результата. Внимательно читайте описания заданий и используйте подсказки, если возникнут трудности.
- Модуль 1: Основы выбора элементов
- Выбор элемента по ID.
- Выбор элементов по классу.
- Выбор элементов по тегу.
- Выбор по селектору CSS.
- Выбор по атрибуту.
- Поиск элементов внутри другого элемента.
- Поиск родительского элемента.
- Поиск соседних элементов (предыдущий, следующий).
- Поиск первого и последнего дочернего элемента.
- Поиск всех дочерних элементов.
- Модуль 2: Манипуляция содержимым
- Модуль 3: Работа с атрибутами
- Модуль 4: Управление классами
- Модуль 5: Управление стилями
- Модуль 6: Создание и удаление элементов
- Создание нового элемента.
- Вставка элемента перед другим элементом.
- Вставка элемента после другого элемента.
- Добавление элемента в определенную позицию внутри списка дочерних элементов.
- Удаление элемента из DOM.
- Замена одного элемента другим.
- Перемещение существующего элемента в другое место DOM..
- Очистка содержимого элемента без его удаления.
- Модуль 7: Обработка событий
- Модуль 8: Работа с формами
- Модуль 9: Продвинутые манипуляции
- Модуль 10: Работа с размерами и прокруткой
- Получение размеров элемента.
- Получение позиции элемента относительно окна браузера.
- Получение позиции элемента относительно родительского элемента.
- Управление прокруткой страницы.
- Определение, виден ли элемент в текущей области просмотра.
- Плавная прокрутка к элементу.
- Создание элемента, который фиксируется при прокрутке.
- Модуль 11: Работа с медиа-элементами
- Модуль 12: Практические задания
Проверка класса у параграфа
Необходимо проверить, есть ли у параграфа с id "myParagraph" класс "highlighted". Выведите в консоль `true`, если класс есть, и `false`, если класса нет.
<p id="myParagraph" class="text highlighted">Это параграф с классом highlighted.</p>
const paragraph = document.input__1("myParagraph");
const hasClass = paragraph.classList.input__2("highlighted");
console.log(hasClass);
Проверка класса у кнопки
Проверьте, есть ли у кнопки с id "myButton" класс "active". Если класс "active" отсутствует, добавьте его. В консоль выведите текущее значение атрибута class кнопки.
<button id="myButton" class="btn">Нажми меня</button>
const button = document.input__1("myButton");
const hasActiveClass = button.classList.input__2("active");
if (!hasActiveClass ) {
button.classList.input__3("active");
}
console.log(button.className);
Проверка класса у нескольких элементов
На странице есть несколько элементов с классом "item". Для каждого элемента проверьте, есть ли у него также класс "active". Выведите в консоль для каждого элемента `true`, если есть оба класса, и `false`, если класса "active" нет.
<div class="item active">Item 1</div>
<div class="item">Item 2</div>
<div class="item active">Item 3</div>
const items = document.input__1(".item");
items.forEach(item => {
const hasActiveClass = item.classList.input__2("active");
console.log(hasActiveClass);
});
Изменение текста в зависимости от класса
Проверьте, есть ли у элемента с id "message" класс "error". Если класс "error" есть, измените текст элемента на "Ошибка!". Если класса "error" нет, измените текст на "Успешно!".
<div id="message" class="success">Начальный текст</div>
const messageElement = document.input__1("message");
const isError = messageElement.classList.input__2("error");
if (isError) {
messageElement.textContent = "input__3";
} else {
messageElement.textContent = "input__4";
}
Переключение класса при клике
Добавьте обработчик события `click` на кнопку с id "toggleButton". При каждом клике на кнопку, класс "active" должен переключаться (добавляться, если его нет, и удаляться, если он есть).
<button id="toggleButton">Переключить класс</button>
const toggleButton = document.input__1("toggleButton");
toggleButton.addEventListener('click', () => {
toggleButton.classList.input__2("active");
});
Проверка наличия нескольких классов
Проверьте, есть ли у элемента с id "multiClassElement" одновременно классы "style1" и "style2". Выведите в консоль `true`, если оба класса присутствуют, и `false`, если хотя бы одного из них нет.
<div id="multiClassElement" class="style1">Элемент с классом style1</div>
const element = document.input__1("multiClassElement");
const hasStyle1 = element.classList.input__2("style1");
const hasStyle2 = element.classList.input__3("style2");
const hasBothClasses = hasStyle1 input__4 hasStyle2;
console.log(hasBothClasses);
Проверка класса родительского элемента
Для кнопки с id "childButton" найдите ее родительский элемент. Проверьте, есть ли у родительского элемента класс "container". Выведите в консоль `true`, если класс есть, и `false`, если класса нет.
<div class="container">
<button id="childButton">Кнопка внутри контейнера</button>
</div>
const childButton = document.input__1("childButton");
const parentElement = childButton.input__2;
const hasContainerClass = parentElement.classList.input__3("container");
console.log(hasContainerClass);
Проверка класса с использованием className
Проверьте, содержит ли атрибут `class` элемента с id "classStringElement" строку "special". Используйте свойство `className` и метод `includes()`. Выведите в консоль `true`, если строка "special" найдена, и `false`, если нет.
<div id="classStringElement" class="default special">Элемент с двумя классами</div>
const element = document.input__1("classStringElement");
const classString = element.input__2;
const hasSpecial = classString.input__3("special");
console.log(hasSpecial);