JS метод Document.write()


Загальний опис

Метод document.write() виступає як місток між JavaScript та HTML сторінкою, дозволяючи динамічно додавати або замінювати HTML-контент безпосередньо під час завантаження сторінки. Цей метод приймає один або декілька рядків як аргументи, що містять HTML-код, який має бути вставлений у поточний документ. Основна його корисність полягає в здатності швидко маніпулювати вмістом сторінки, що робить його незамінним інструментом для створення інтерактивних веб-сайтів та веб-додатків, особливо коли потрібно додати контент до сторінки до її повного завантаження.

Застосування document.write() може варіюватися від простого додавання тексту до вставки складних HTML-структур. Наприклад, для додавання простого текстового рядка на веб-сторінку можна використати наступний код:

document.write('Це простий текст.');

Цей код вставить рядок "Це простий текст." на місце, де було викликано метод. Для додавання більш складного HTML-контенту, такого як зображення або посилання, метод застосовується аналогічно:

document.write('<img src="image.jpg" alt="Приклад зображення">');
document.write('<a href="http://example.com">Відвідайте наш сайт</a>');

Такий підхід дозволяє динамічно формувати вміст веб-сторінки, використовуючи JavaScript для вставки зображень, посилань, таблиць, і навіть цілих блоків HTML-коду.

Однак слід бути обережними при використанні document.write() після завантаження сторінки, оскільки виклик цього методу після завершення завантаження сторінки може призвести до перезапису всього вмісту сторінки. Це може мати несподівані наслідки, особливо в сучасних веб-додатках, де динамічний контент завантажується асинхронно.

Важливо також зазначити, що сучасні веб-стандарти і практики веб-розробки з часом відходять від використання document.write() через його потенційно негативний вплив на продуктивність веб-сторінок та компатибільність з асинхронним завантаженням контенту. Альтернативні методи, такі як використання document.createElement() та element.appendChild(), надають більш контрольований та ефективний спосіб маніпулювання DOM.

Попри свої обмеження, document.write() залишається корисним інструментом для певних сценаріїв, особливо коли необхідно швидко вставити контент під час завантаження сторінки. Розуміння потенціалу та обмежень цього методу є важливим для розробників, які прагнуть створювати ефективні та відповідні веб-додатки.

автор: Bond

Порада

Уникайте використання document.write() у сучасних веб-додатках, де краще застосовувати методи DOM для маніпуляції елементами, такі як appendChild() або innerHTML. Ці методи надають більшу гнучкість і контроль над динамічним контентом без ризику несподіваного перезапису сторінки.

автор: Bond
Порада

Якщо вам все ж потрібно використати document.write() для тестування або прототипування, завжди переконуйтеся, що робите це під час завантаження сторінки. Виклики document.write() після завантаження документа можуть призвести до видалення всього існуючого контенту, що робить ваш сайт непрацездатним.

автор: Bond
Порада

Для вставки скриптів через document.write() слід бути особливо обережними, оскільки це може затримати завантаження сторінки або навіть заблокувати її, якщо скрипт не завантажується. Замість цього краще використовувати асинхронне завантаження скриптів або поміщати їх у кінець тіла документа, щоб забезпечити кращу продуктивність і користувацький досвід.

автор: Bond

Синтаксис

write(markup)

Параметри

markup

Рядок, що містить HTML або текст, який буде записаний у документ.

автор: Bond

Повернення

none

Повертає undefined, оскільки метод не передбачає повернення якогось значення після виконання операції запису HTML або тексту до документа. Його основна функція полягає у безпосередньому додаванні або зміні вмісту поточного документа, а не у поверненні даних для подальшого використання.

автор: Bond

Переглядачі

Підтримка: стаціонарні переглядачі
Переглядач Google Chrome Mozilla Firefox Apple Safari Opera Microsoft EDGE Microsoft Internet Explorer
45 69 11 3 12 4
Підтримка: мобільні переглядачі
Переглядач Mobile Google Android Mobile Google Chrome Mobile Mozilla Firefox Mobile Apple Safari
45 45 79 11

Приклади

+ запропонувати свій приклад у пісочниці

У цьому прикладі демонструється базове використання методу document.write() для додавання текстового повідомлення безпосередньо на веб-сторінку. Цей метод може бути корисним для швидкого виведення даних на екран під час відлагодження або для динамічного формування вмісту сторінки.

// Використання document.write() для виведення тексту на сторінку
document.write('Це просте повідомлення, виведене на сторінку.');
автор: Bond

У цьому прикладі показано більш складне використання document.write(), де метод використовується для динамічного створення HTML-елементів разом із встановленням стилів. Це може бути корисно для генерації складних структур сторінки на льоту.

// Використання document.write() для створення HTML-елемента зі стилями
document.write('<div style="background-color: #f0f0f0; padding: 20px; margin-top: 10px;">' +
               'Цей блок було створено динамічно з використанням document.write().' +
               '</div>');
автор: Bond

У цьому прикладі, коли користувач вводить текст у поле вводу та натискає кнопку "Додати текст", метод document.write() використовується для додавання цього тексту до сторінки. Цей приклад показує базове використання document.write() для динамічного додавання контенту, але важливо пам'ятати про його недоліки, зокрема перезапис вмісту сторінки, що може призвести до втрати вже існуючого DOM.

автор: Bond

Коментарі

Коментарів ще немає — будьте першим!

Відповідь для

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Увійдіть — коментар з'явиться одразу, без капчі й очікування перевірки.

Пропозиція правки

Ваша версія — : після перевірки замінить чинну. Нова порада чи нотатка — з'явиться на сторінці після перевірки.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія секції «»: після перевірки замінить чинну.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Ваша версія опису «»: після перевірки замінить чинну.

Як форматувати текст?
Пишемо Виходить
**важливо**
*акцент*
~~застаріле~~
Виділення в тексті. Те саме роблять кнопки панелі, що спливає над виділеним.
## Як працює каскад
### Порядок оголошень
Заголовки всередині тексту. Найбільший не потрібен — він у сторінки вже є.
[[css/property/color]] Посилання на сторінку довідника. Наберіть [[ — поле саме підкаже шляхи, а хибний підкреслить хвилею.
[MDN](https://developer.mozilla.org) Посилання на чужий сайт.
![Схема каскаду](https://site.com/схема.png) Картинка. Опис обов'язковий: його читають пошуковик і незрячі.
Задайте `display: grid` контейнеру Код усередині речення.
```css
.card { display: grid }
```
Код блоком. Мова після трьох лапок вмикає підсвітку.
- Походження
1. Походження
Перелік: маркований і нумерований.
- [ ] дописати приклади
- [x] перевірити в Firefox
Перелік завдань із галочками. Пробіл у порожніх дужках обов'язковий.
> Порядок важить лише за рівної ваги. Цитата на всю ширину абзацу.
Специфічність
: вага селектора; більша перемагає
Список означень: термін, а під ним пояснення з відступом. Пробіл після двокрапки обов'язковий.
Каскад має три критерії[^1]
[^1]: Походження, специфічність, порядок.
Виноска: номер у тексті, примітка внизу сторінки. Без згадки [^1] у тексті примітка не з'явиться.
Відповідь: ||сорок два|| Ховає те, що між рисками: читач бачить на цьому місці розмиту пляму, а решта речення лишається звичайною. Клац — і текст відкрито.
|| Показати рішення
Задайте контейнеру `display: grid`.
||
Ховає цілі абзаци. На сторінці видно лише підпис із першого рядка («Показати рішення»), решта розгортається клацанням по ньому. Закривні риски — окремим рядком.
Порожній рядок Новий абзац. Щоб перенести рядок усередині абзацу, поставте \ в його кінці.

Ви гість — діють добові ліміти. Увійдіть, щоб пропонувати без капчі.

Зворотний зв'язок
Вхід