Поиск элементов на странице

Поиск элемента по тегу

var list = document.querySelector('ul');

Поиск последнего элемента из списка

var lastProduct = document.querySelector('li:last-child');

Поиск элемента по классу

var price = document.querySelector('.price');

Поиск третьего элемента из списка товаров

var thirdProduct = document.querySelector('.product:nth-child(3)');

Поиск всех элементов, подходящих по селектору

var listItems = document.querySelectorAll('.product');

querySelectorAll возвращает список (коллекцию) элементов. Этот список похож на массив, но им не является. Он называется псевдомассив и его можно перебирать с помощью цикла for.

Добавление класса элементу страницы

// Когда ищем элемент по классу, используем точку var product = document.querySelector('.product');

// Но когда добавляем класс, точки нет! product.classList.add('product--sale');

Результат работы classList.add() такой же, как при ручном добавлении класса в разметку:

  • Свойство DOM-элемент.children возвращает коллекцию дочерних, то есть вложенных, DOM-элементов.

    Создание элемента и добавление его в DOM-дерево

    var list = document.querySelector('.cards');

    // Создаём новый элемент var card = **document.createElement('li')**;

    card.classList.add('card');

    // После вызова этого метода новый элемент отрисуется на странице list.appendChild(card);

    Вот что произойдёт с разметкой после вызова appendChild:

    • Существующий элемент

    • Существующий элемент
    • Добавленный элемент

    Работа с текстовым содержимым элемента

    HTML

    Я — текстовый элемент.

    JS

    var p = document.querySelector('p');
    console.log(**p.textContent**);
    // Выведет: Я — текстовый элемент.
     
    **p.textContent** = 'Теперь у меня новое содержимое.';
    console.log(p.textContent);
    // Выведет: Теперь у меня новое содержимое.
     
    // В HTML содержание тега изменится
    <p>Теперь у меня новое содержимое.</p>

    Работа с изображениями:

    Создание изображения

    var picture = document.createElement('img');

    Добавляем адрес картинки

    picture.src = 'images/picture.jpg';

    Добавляет альтернативный текст

    picture.alt = 'Непотопляемая селфи-палка';

    Добавляет изображение в конец родительского элемента

    element.appendChild(picture);