JavaScript виконання коду JavaScript підключення зовнішнього файлу JavaScript console.log JavaScript змінні і константи JavaScript типи даних JavaScript операції зі змінними JavaScript перетворення даних JavaScript масиви JavaScript умовні конструкції JavaScript цикли JavaScript функції JavaScript область видимості змінних JavaScript замикання і функції IIFE JavaScript Паттерн Модуль JavaScript рекурсивні функції JavaScript перевизначення функцій JavaScript hoisting JavaScript передача параметрів за значенням і за посиланням JavaScript стрілочні функції JavaScript ООП Object JavaScript ООП вкладені об'єкти і масиви в об'єктах JavaScript ООП перевірка наявності і перебір методів і властивостей JavaScript ООП об'єкти у функціях JavaScript ООП конструктори об'єктів JavaScript ООП розширення об'єктів. prototype JavaScript ООП інкапсуляція JavaScript ООП Функція як об'єкт. Методи call і apply JavaScript ООП спадкування JavaScript ООП Ключове слово this JavaScript ООП Object destructuring JavaScript ООП класи JavaScript ООП Date. Робота з датами JavaScript Об'єкт Math. математичні операції JavaScript Об'єкт Array. Робота з масивами JavaScript ООП об'єкт Number JavaScript String JavaScript String Об'єкт RegExp. Регулярні вирази JavaScript String Регулярні вирази в методах String JavaScript String Синтаксис регулярних виразів JavaScript Робота з браузером і BOM JavaScript діалогові вікна JavaScript Історія браузера. об'єкт history JavaScript об'єкт location JavaScript об'єкт navigator JavaScript таймери JavaScript DOM Введення JavaScript DOM Об'єкт document. Пошук елементів JavaScript DOM Властивості об'єкта document JavaScript DOM Об'єкт Node. Навігація по DOM JavaScript DOM Створення, додавання і видалення елементів веб-сторінки JavaScript DOM Об'єкт Element. управління елементами JavaScript DOM Зміна стилю елементів JavaScript події. Введення в обробку подій. JavaScript події обробники JavaScript події. об'єкт Event JavaScript події. поширення подій JavaScript події миші JavaScript події клавіатури JavaScript FORMS. Форми і їх елементи JavaScript FORMS. Кнопки JavaScript FORMS. текстові поля JavaScript FORMS. Прапорці та перемикачі JavaScript FORMS. Список select JavaScript JSON JavaScript зберігання даних. cookie JavaScript зберігання даних. Web Storage JavaScript Collection. Ітератори JavaScript Collection. Генератори JavaScript Collection. Множина Set JavaScript Collection. Map JavaScript Collection. WeakSet і WeakMap JavaScript AJAX. XMLHttpRequest JavaScript AJAX. Відправка даних JavaScript AJAX. Promise в Ajax-запитах

JavaScript DOM Зміна стилю елементів


Для роботи зі стильовими властивостями елементів в JavaScript застосовуються, головним чином, два підходи:

  • Зміна властивості style

  • Зміна значення атрибута class


властивість style

Властивість style представляє складний об'єкт для управління стилем і безпосередньо зіставляється з атрибутом style html-елемента. Цей об'єкт містить набір властивостей CSS: element.style.властивістьCSS . Наприклад, встановимо колір шрифту:

var root = document.documentElement;

// встановимо стиль
root.style.color = "blue";

// отримуємо значення стилю
document.write(root.style.color); // blue

В даному випадку назва властивості color збігається з властивістю css . Аналогічно ми могли б встановити колір за допомогою css:

html{
    color:blue;
}

Однак ряд властивостей css в назвах мають дефіс, наприклад, font-family . В JavaScript для цих властивостей дефіс не вживається. Тільки перша буква, яка йде після дефіса, перекладається в верхній регістр:

var root = document.documentElement;
root.style.fontFamily = "Verdana";

властивість className

За допомогою властивості className можна встановити атрибут class елемента html. наприклад:

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8" />

    <style>
    .blueStyle{
        color:blue;
        font-family:Verdana;
    }
    .article{
        font-size:20px;
    }
    </style>

</head>
<body>

<div class="article">
<h3>Заголовок статті</h3>
<p>Перший абзац</p>
<p>Другий абзац</p>
</div>

<script>
var articleDiv = document.querySelector("div.article");

// установка нового класу
articleDiv.className = "blueStyle";

// отримуємо назву класу
document.write(articleDiv.className);

</script>

</body>
</html>

Завдяки використанню класів не доведеться налаштовувати кожну окрему властивість css за допомогою властивості style .

Але при цьому треба враховувати, що колишнє значення атрибута class видаляється. Тому, якщо нам треба додати клас, треба об'єднати його назву зі старим класом:

articleDiv.className = articleDiv.className + " blueStyle";

І якщо треба зовсім видалити всі класи, то можна привласнити властивості порожній рядок:

articleDiv.className = "";

властивість classList

Вище було розглянуто, як додавати класи до елементу, однак для управління безліччю класів набагато зручніше використовувати властивість classList . Це властивість представляє об'єкт, який реалізує наступні методи:

  • add (className) : додає клас className

  • remove (className) : видаляє клас className

  • toggle (className) : перемикає у елемента клас на className. Якщо класу немає, то він додається, якщо є, то видаляється

наприклад:

var articleDiv = document.querySelector("div.article");

// видаляємо клас
articleDiv.classList.remove("article");

// додаємо клас
articleDiv.classList.add("blueStyle");

// переключаємо класс
articleDiv.classList.toggle("article");

Наш партнер:
beta test mp3 playlist downloader