| Понятие | Что означает |
|---|
| document в обычной странице | Объект документа, с которым работает JavaScript в браузере. Через него можно искать элементы, создавать узлы и обращаться к другим возможностям документа. |
| DOM | Представление структуры документа в виде объектов и связей между ними. Оно может меняться во время работы страницы и не обязано совпадать с первоначальным исходным текстом. |
| HTML-файл на сервере или диске | Исходные данные, из которых браузер получил страницу. Изменение DOM через JavaScript само по себе не переписывает этот файл. |
| querySelector | Способ найти первый элемент, подходящий под CSS-селектор. Поиск относится к текущему представлению документа в выбранной области. |
| createElement | Способ создать объект нового элемента. Для появления на странице его затем нужно присоединить к подходящему родителю. |
| document в другом окружении | Обычный процесс Node.js или веб-воркер не получает такой объект страницы автоматически. Доступные интерфейсы зависят от среды выполнения. |
Например, изменение textContent кнопки меняет ее содержимое в открытом документе. При новой загрузке браузер снова получает исходную страницу и выполняет предусмотренные скрипты. Если изменение нигде не сохраняется и не восстанавливается, прежнее содержимое закономерно возвращается.
Для сохранения пользовательских изменений нужен отдельный механизм: серверная запись или подходящее локальное хранилище с последующим восстановлением. Выбор зависит от задачи. Одно присваивание свойству DOM-элемента не является записью в файл проекта или в базу данных.
Если на странице есть iframe, у него свой документ. Не считайте, что поиск из главного документа автоматически охватывает все вложенные страницы. Начните с понимания, в каком документе выполняется ваш скрипт и какие узлы он изменяет.
Ответить на вопрос