TGViewer
YeaHub Tech YeaHub Tech @yeahub_tech · 411 subscribers
Post #29 66
#js #html

✏️ Как работает JS: Пользовательские элементы

Пользовательские элементы (Custom Elements) — это мощный инструмент для создания кастомных HTML-элементов с JavaScript-логикой и стилями. Они позволяют интегрировать динамическое поведение и улучшать структуру веб-приложений, создавая повторно используемые компоненты.

〰️ Что такое пользовательские элементы?
Пользовательские элементы — это расширения стандартных HTML-элементов. Они позволяют создавать новые теги, которые ведут себя как обычные элементы, но с дополнительной логикой и стилями.

🔸 Основные методы API
- define(tagName, constructor): регистрирует новый пользовательский элемент.
- get(tagName): возвращает конструктор уже зарегистрированного элемента.
- whenDefined(tagName): возвращает промис, который срабатывает после регистрации элемента.

🔸 Жизненный цикл пользовательского элемента
Каждый пользовательский элемент проходит через несколько методов жизненного цикла:
- constructor: вызывается при создании элемента.
- connectedCallback: при добавлении в DOM.
- disconnectedCallback: при удалении из DOM.
- attributeChangedCallback: при изменении атрибутов элемента.

🔸 Структура и стили
Для создания пользовательских элементов используется class, расширяющий HTMLElement. Это позволяет использовать JavaScript для добавления логики. Стили применяются как в обычных HTML-элементах, но с учетом специфики Shadow DOM.

🔸 Преимущества и проблемы
Пользовательские элементы решают проблему «супа из тегов div», упрощая структуру кода и улучшая его повторное использование. Они также обеспечивают возможность динамически добавлять элементы на страницу.

Пользовательские элементы открывают новые горизонты для создания веб-приложений без использования фреймворков. Они позволяют интегрировать логику и стили прямо в HTML-элементы, что делает их мощным инструментом для современных веб-разработчиков.


🔗 Статья

👉 Новости 👉 Платформа
  • 👍 2
  • 🔥 2
  • ❤ 1
  • 🤝 1
More from @yeahub_tech
  1. Oct 12, 2026🧑‍💻 Сложные вопросы с собесов на Java разработчика 1. Каким образом Spring реализует тра…
  2. Oct 9, 2026#Собес #pipeline #ci #stage 🤔 Что происходит при автоматической сборке feature-ветки на s…
  3. Oct 8, 2026#course #задачи #тесты 📚 JavaScript. A3 Задачи Задачи на программирования на языке JavaSc…
  4. Oct 7, 2026#course #начинающие 📚 Твой Golang Твой Golang — это идеальный старт для освоения языка. П…
  5. Oct 5, 2026🧑‍💻 Вопросы с собесов для Node.js Разработчика 1. Как использовать Service Workers для р…
  6. Oct 2, 2026#Собес #transaction #propagation #required 🤔 Что такое propagation у транзакций и какие т…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →