Готовое решение для создания
корпоративного сайта
+7 383 380-81-89
Подать заявку
Продукты
  • Лицензии 1С-Битрикс
  • Битрикс 24
Услуги
  • Разработка сайтов
    • Одностраничный сайт
    • Интернет магазин
    • Создание Landing Page
    • Сайт компании
    • Продающий сайт
    • Сайт визитка
  • Дизайн
    • Разработка дизайна сайта
    • Фирменный стиль
  • SEO
    • Интернет реклама
    • Seo аудит
    • Комплексное продвижение сайтов
    • Продвижение в Google
    • Продвижение в Яндексе
    • Продвижение интернет магазина
    • Продвижение молодого сайта
  • Поддержка
    • Доработка существующего сайта
    • E-commerce аналитика
  • Разработка ИИ-агентов
    • Разработка ИИ-агентов
Кейсы
  • Landing Page
  • Telegram боты
  • Дизайн
  • ИИ-агенты
  • Интернет-магазин
  • Корпоративный сайт
  • Разработка и обслуживание сайтов
Тарифы
  • Битрикс24 облако
  • 1С-Битрикс: Управление сайтом
    • Корпоративный сайт
    • Сайт каталог
    • Интернет-магазин
    • Интернет-магазин + CRM
  • Битрикс24 коробка
    • Интернет-магазин + CRM
    • Корпортал 50
    • Корпортал 100
    • Энтерпрайз
  • Лицензии 1С
    • Зарплата и управление персоналом
    • Комплексная автоматизация
    • Предприятие
    • Управление торговлей
  • МойСклад
    • Бесплатный
    • Базовый
    • Проф
  • СБИС
    • Бухгалтерия Базовая
    • Бухгалтерия Комфорт
    • Отчетность Базовый ИП
    • Отчетность Легкий ИП
Акции
Блог
Новости
Компания
  • О компании
  • Документы
  • Партнеры
  • Клиенты
  • Сотрудники
  • Вакансии
  • Отзывы
  • Реквизиты
Контакты
Информация
  • Вопрос-ответ
  • Оплата
  • Акции
  • Блог
  • Компания
  • Отзывы
  • Контакты
  • ...
    Есть вопросы? Задайте онлайн Telegram Whatsapp
    +7 383 380-81-89
    Пн – Вс: 08-00 – 22-00
    Заказать звонок
    SEO
    Разработка сайтов
    • Одностраничный сайт
    • Интернет магазин
    • Создание Landing Page
    • Сайт компании
    • Продающий сайт
    • Сайт визитка
    Сайт 1С-Битрикс
    • 1С-Битрикс: Бизнес
    • 1С-Битрикс: Малый бизнес
    • 1С-Битрикс: Стандарт
    • 1С-Битрикс: Старт
    Битрикс 24
    Доп. услуги
    Дизайн
    • Разработка дизайна сайта
    • Фирменный стиль
    Кейсы
    • Landing Page
    • Telegram боты
    • Дизайн
    • ИИ-агенты
    • Интернет-магазин
    • Корпоративный сайт
    • Разработка и обслуживание сайтов
    Цены
      Подать заявку
      SEO
      Разработка сайтов
      • Одностраничный сайт
      • Интернет магазин
      • Создание Landing Page
      • Сайт компании
      • Продающий сайт
      • Сайт визитка
      Сайт 1С-Битрикс
      • 1С-Битрикс: Бизнес
      • 1С-Битрикс: Малый бизнес
      • 1С-Битрикс: Стандарт
      • 1С-Битрикс: Старт
      Битрикс 24
      Доп. услуги
      Дизайн
      • Разработка дизайна сайта
      • Фирменный стиль
      Кейсы
      • Landing Page
      • Telegram боты
      • Дизайн
      • ИИ-агенты
      • Интернет-магазин
      • Корпоративный сайт
      • Разработка и обслуживание сайтов
      Цены
        +7 383 380-81-89
        Заказать звонок
        E-mail
        info@la-chatte.com
        Адрес
        г. Новосибирск, ул. Крашенинникова 3-й переулок, д. 7
        Режим работы
        Пн. – Пт.: с 9:00 до 18:00
        Подать заявку
        Телефоны
        +7 383 380-81-89
        Заказать звонок
        • SEO
        • Разработка сайтов
          • Разработка сайтов
          • Одностраничный сайт
          • Интернет магазин
          • Создание Landing Page
          • Сайт компании
          • Продающий сайт
          • Сайт визитка
        • Сайт 1С-Битрикс
          • Сайт 1С-Битрикс
          • 1С-Битрикс: Бизнес
          • 1С-Битрикс: Малый бизнес
          • 1С-Битрикс: Стандарт
          • 1С-Битрикс: Старт
        • Битрикс 24
        • Доп. услуги
        • Дизайн
          • Дизайн
          • Разработка дизайна сайта
          • Фирменный стиль
        • Кейсы
          • Кейсы
          • Landing Page
          • Telegram боты
          • Дизайн
          • ИИ-агенты
          • Интернет-магазин
          • Корпоративный сайт
          • Разработка и обслуживание сайтов
        • Цены
        Подать заявку
        Есть вопросы? Задайте онлайн Telegram Whatsapp
        • +7 383 380-81-89
          • Телефоны
          • +7 383 380-81-89
          • Заказать звонок
        • г. Новосибирск, ул. Крашенинникова 3-й переулок, д. 7
        • info@la-chatte.com
        • Пн. – Пт.: с 9:00 до 18:00

        Что такое ДОМ? Введение для непрограммистов

        Главная
        —
        Блог
        —
        Дизайн
        —Что такое ДОМ? Введение для непрограммистов
        Что такое ДОМ? Введение для непрограммистов
        24 сентября 2023
        599 просмотров
        7 минут

        С начала века веб-сайты прошли долгий путь. То, что когда-то было набором базовых текстовых страниц, превратилось в сеть тщательно продуманных интерфейсов, дополненных такими элементами, как адаптивные кнопки, параллаксная прокрутка и персонализированный контент.

        человек на компьютере учится дома

        Но как эти функции веб-дизайна воплощаются в жизнь? Вот тут-то и появляется объектная модель документа ( DOM ). В этом руководстве мы объясним, что такое DOM и почему он является ключевым компонентом просмотра веб-страниц.

        Прежде чем приступить к работе, вы уже должны быть знакомы с основами HTML, CSS и JavaScript .

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

        Чтобы лучше понять, почему DOM полезен, давайте сначала обсудим, что означает «объект» в компьютерном программировании.

        Что такое объект?

        Вкратце, конечная задача компьютерного программного обеспечения — выполнение действий с данными. Данные бывают самых разных типов: числа, символы и слова, и это лишь некоторые из них.

        Чем больше делает программа, тем больше данных ей необходимо обработать и обработать. Без масштабируемой, организованной системы для этого возрастающая сложность приведет к ошибкам. Никто не любит ошибки.

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

        Вот пример: предположим, вы создаете программу, хранящую информацию о домах. В реальной жизни дома содержат множество вещей — комнаты, мебель, технику и людей, не говоря уже о другой важной информации, такой как район, адрес и количество этажей.

        Если вы хотите представить переменную дома в программе, не имеет смысла хранить все эти данные, связанные с домом, отдельно. Вместо этого вы можете создать объект «дом» для каждого дома в системе и поместить в него все предметы дома. «Дом» может содержать данные всей информации, которую мы описали выше, и многое другое.

        Вы даже можете помещать объекты внутрь других объектов. В нашем примере объект дома может содержать объекты «комнаты». Вы можете обозначить один объект комнаты как кухню, которая сама может содержать данные о бытовой технике, материале столешницы и т. д.

        Главный вывод здесь заключается в том, что объекты группируют данные логическим иерархическим образом. Чтобы лучше это понять, полезно представить себе такой объект, как дерево. Ну, больше похоже на перевернутое дерево. Имя объекта похоже на «корень» дерева, а все его ветви — на хранящиеся внутри него данные. Вот дерево для визуализации нашего объекта дома:

        древовидная диаграмма, представляющая структуру объекта программирования

        Зачем нам нужен DOM

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

        базовый HTML-документ в текстовом редакторе

        Обратите внимание, что его части также структурированы в иерархию. Тег <html> в нашем примере действует как самый верхний «дом». Внутри нашего «дома» HTML у нас есть теги <head> и <body>, которые напоминают наши комнаты. Наконец, есть самые специфические элементы: <title>, <h1>, <h2>, <p>, <img> и <button>. Думайте об этом как о предметах, предназначенных для конкретной комнаты, например, о кровати и лампе.

        Элементы в HTML-документе структурированы таким образом по той же причине, что и объекты: иерархическая структура помогает компьютерным программам читать и обрабатывать информацию. В случае HTML ваш веб-браузер — это программа, а языки сценариев, такие как JavaScript, изменяют и модифицируют HTML-код.

        Но есть проблема. HTML-документы сами по себе не являются объектами. Они не могут быть прочитаны с помощью JavaScript без какого-либо преобразования файла в объект. Здесь на помощь приходит DOM.

        DOM представляет весь HTML-документ как один объект. Чтобы создать DOM, веб-браузер, читающий HTML-файл, берет все его части, от корневого элемента <html> до самых маленьких тегов <span>, и выводит их как объект, понятный JavaScript.

        Слово «представлять» здесь важно. DOM не является копией HTML-файла — это просто другой способ организации HTML-информации в веб-браузере.

        Способ, которым браузер создает DOM, аналогичен тому, как он создает веб-страницу. Когда вы открываете любую страницу в браузере, вы видите визуальное представление браузера базового HTML. Вы просматриваете тот же контент, но организованный в виде страницы, которую ваш мозг может легко понять. DOM — это еще один способ представления HTML вашим браузером. В DOM HTML организован в объект, который легко понять JavaScript.

        Помните мой пример с деревом ранее? Вот как DOM будет представлять наш простой HTML-файл как объект, поддерживающий JavaScript:

        древовидная диаграмма, представляющая структуру DOM

        Прежде чем мы продолжим, следует отметить еще одну вещь: DOM не является специфичным для JavaScript. Любой язык программирования (например, Python, C++) может использовать DOM для изменения веб-страниц. Однако JavaScript влияет на большинство страниц, которые мы видим в Интернете, поэтому это единственный язык программирования, который вам нужно знать, чтобы понимать DOM.

        Мы обсудили дома, браузеры и перевернутые деревья... но какое отношение все это имеет к созданию веб-сайтов?

        Что такое DOM в веб-дизайне?

        В веб-дизайне JavaScript используется для управления поведением веб-страниц. DOM связывает JavaScript с исходным HTML-кодом, что позволяет JavaScript выполнять свои функции над отдельными элементами HTML. Это взаимодействие JavaScript-HTML создает опыт интерактивного веб-дизайна.

        Объекты не только хороши для организации данных, но и позволяют программам легко получать доступ к определенным фрагментам данных внутри них.

        Возвращаясь к нашему объекту дома, предположим, вы хотите отредактировать элемент «kitchen_countertop» конкретного дома. Для этого вашей программе просто нужно найти рассматриваемый дом, пройти вниз по дереву объектов к объекту кухни, а затем изменить элемент «kitchen_countertop» с «кварц» на «мрамор». Хороший выбор.

        Точно так же DOM предоставляет JavaScript доступ практически к каждому элементу HTML-документа, от всей страницы до короткой строки текста.

        Всякий раз, когда что-то происходит на веб-странице после загрузки страницы (например, нажатие кнопки отправляет форму или элемент меняет размер/цвет), это код JavaScript, нацеленный на определенный элемент через DOM и вносящий изменения. Код JavaScript может находиться в отдельном файле .js или даже в самом HTML-документе.


        <h2>What Can JavaScript Do?</h2>

        <p>JavaScript can show hidden HTML elements.</p>

        <p id="demo" style="display:none">Hello JavaScript!</p>

        <button type="button" onclick="document.getElementById('demo').style.display='block'">Click Me!</button>


        Левая панель содержит исходный код, а правая панель показывает код, отображаемый в виде веб-страницы. В тот момент, когда вы нажимаете «Нажми на меня!» , запускается следующий JavaScript.

        document.getElementById('demo').style.display='block'

        В приведенном выше коде:

        • document — это способ JavaScript направить объект HTML-файла через DOM. Он сообщает браузеру: «Я хочу войти в HTML-файл и внести изменения».
        • .getElementByID('demo') нацелен на элемент страницы с идентификатором «demo». Это элемент, который JavaScript хочет изменить. Чтобы достичь этого, JavaScript начинается с самого верхнего тега <html>, затем проходит через DOM, пока не достигнет элемента с текстом «Hello JavaScript!»
        • .style.display='block' — это действие. Как только целевой элемент найден, он отображает текст.

        Сложные веб-страницы выполняют эти вызовы сотни раз, когда пользователи взаимодействуют с ними. JavaScript использует DOM каждый раз.

        DOM: как сделать Интернет интересным

        Надеюсь, вы понимаете, почему объектная модель документа так важна для современных веб-сайтов. Без него JavaScript не смог бы круто изменять веб-страницы — у нас было бы просто множество скучных, статичных веб-страниц.

        Вам никогда не придется беспокоиться о программировании DOM самостоятельно, поскольку веб-браузер сделает всю работу за вас. Тем не менее, независимо от того, пробуете ли вы новые эффекты страницы перед редизайном веб-сайта , полезно знать внутреннюю работу вашего присутствия в Интернете на случай, если вам понадобится быстрая отладка или вы просто хотите знать, что на самом деле происходит под капюшон.


        Дополнительно

        Дополнительная вкладка, для размещения информации о статьях, доставке или любого другого важного контента. Поможет вам ответить на интересующие покупателя вопросы и развеять его сомнения в покупке. Используйте её по своему усмотрению.

        Вы можете убрать её или вернуть обратно, изменив одну галочку в настройках компонента. Очень удобно.

        • Комментарии
        Загрузка комментариев...
        Назад к списку
        • E-Commerce 41
        • Веб 53
        • Дизайн 35
        • Маркетинг 54
        • Онлайн-кассы 5
        • Фишки для увеличения конверсий 135
        • Хостинг и серверы 39
        1С-Битрикс SEO Адаптив Готовые решения Интернет-магазин Онлайн-кассы Хостинг Честный знак
        +7 383 380-81-89
        Заказать звонок
        info@la-chatte.com
        г. Новосибирск, ул. Крашенинникова 3-й переулок, д. 7
        Услуги
        Разработка сайтов
        Дизайн
        SEO
        Поддержка
        Разработка ИИ-агентов
        Каталог
        Лицензии 1С-Битрикс
        Битрикс 24
        Компания
        О компании
        Документы
        Партнеры
        Клиенты
        Сотрудники
        Вакансии
        Отзывы
        Реквизиты
        Информация
        Вопрос-ответ
        Оплата
        E-Commerce Блог
        © 2026 La-chatte.
        Политика конфиденциальности
        Подписаться на рассылку