Динамический HTML предоставляет возможность создавать для различных целей новые окна. Созданные с помощью JavaScript, такие окна имеют стандартный вид и по типу разделяются на диалоговые и обычные. Диалоговые окна, называемые, также, модальными, приостанавливают действие всех скриптов и ожидают от пользователя нажатия на какую-либо кнопку или закрытия окна. Обычные работают независимо от текущего окна, откуда запускается программа.
Существует четыре метода создания диалоговых окон, которые перечислены в таблице.
| Метод | Описание | Вид | Пример | 
|---|---|---|---|
| alert | Выводит текст и ожидает нажатия на кнопку ОК. Используется преимущественно для сообщений об ошибках. |  | alert("Hello, world!") | 
| confirm | Аналогично alert, но выводит две кнопки ОК и Cancel. Используется для задания вопроса. При нажатии на ОК возвращается true, а кнопка Cancel возвращает false. |  | if( confirm("Удалить все? Уверены?")) alert ("Удаляем...") else alert ("Ну как хотите..."); | 
| prompt | Запрашивает строку ввода. |  | n = prompt ("Введите ваше имя:", defaultText="") if (n) alert("Имя: " + n) | 
| showModalDialog | Загружает в окно указанный файл. Может возвращать значение. | Поскольку этот тип окна отображает обычный HTML-документ, вид у него может быть любой. | showModalDialog ("color.html") | 
Методы alert и confirm позволяют выводить несколько строк текста. Для переноса текста на другую строку используется символ . Метод prompt допускает не более двух строк в тексте запроса.
С помощью метода showModalDialog можно создавать окна по своему виду и желанию. Однако, данный способ создания модальных окон поддерживается только браузером Internet Explorer.
 Подобные окна имееют следующие особенности:
  
Синтаксис вызова метода следующий.
URL представляет собой путь к HTML-документу, который следует открыть в диалоговом окне. Имя представляет собой условное название открываемого окна, его можно опустить.
Параметры для управления видом окна могут быть следующими.
| Параметр | Значение | Описание | 
|---|---|---|
| border | thick | thin | Задает толщину рамки окна | 
| center | yes | no или 1 | 0 | Выравнивает окно по центру экрана монитора | 
| dialogHeight | px, %... | Высота диалогового окна | 
| dialogLeft | px, %... | Задает положение левого верхнего угла по горизонтали | 
| dialogTop | px, %... | Задает положение левого верхнего угла по вертикали | 
| dialogWidth | px, %... | Ширина диалогового окна | 
| maximize | yes | no или 1 | 0 | Добавляет кнопку "Развернуть" в строке заголовка | 
| minimize | yes | no или 1 | 0 | Добавляет кнопку "Свернуть" в строке заголовка | 
Перечисленные параметры могут идти в любом порядке через запятую. Размер диалогового окна не может быть меньше, чем 100х100 пикселов и не допустимо размещать его за пределами экрана. Включение или выключение параметра можно определять через указание им значения yes или no (или 1 и 0). Например, center=yes идентично center=1.
Пример 1. Создание диалогового окнаshowModalDialog("tips.html", "", "dialogWidth=350px, dialogHeight=200px")
</script>В примере создается окно с размерами 350х200, в которое загружается файл tips.html .
Всплывающие окна представляют собой обычные окна браузера, которые создаются с помощью объекта window. При этом можно управлять видом этого окна, задавая его размеры и отключая различные элементы.
Для создания окна используется метод open, который имеет следующий синтаксис.
Значения параметров совпадают с параметрами создания модального окна методом showModalDialog.
Параметры, управляющие видом окна имеют некоторые отличия от элементов диалоговых окон.
| Параметр | Значение | Описание | 
|---|---|---|
| directories | yes | no или 1 | 0 | Отображает панель ссылок | 
| location | yes | no или 1 | 0 | Отображает адресную строку | 
| menubar | yes | no или 1 | 0 | Отображает меню | 
| scrollbars | yes | no или 1 | 0 | Показывает полосу прокрутки | 
| toolbar | yes | no или 1 | 0 | Показывает кнопки на панели инструментов | 
| status | yes | no или 1 | 0 | Отображает строку состояния | 
| rersizible | yes | no или 1 | 0 | Определяет, можно ли изменять размеры окна | 
| left | пикселы | Задает положение левого верхнего угла по горизонтали | 
| top | пикселы | Задает положение левого верхнего угла по вертикали | 
| width | пикселы | Ширина окна | 
| height | пикселы | Высота окна | 
Ниже показан пример создания окна без полосы прокрутки, меню, строки 
  навигации и др.
 window.open("help.html", 
        "help", "width=350, height=200, status=0, 
        menubar=0, location=0 resizable=0 directories=0 toolbar=0")
      
Параметры управления видом окна можно использовать в любом порядке, перечисляя их через запятую.
Если окно создано динамически с помощью скрипта, его можно закрыть в любой момент методом close.
Пример 3. Закрытие окнаПеременная help в примере является ссылкой на вновь созданное окно, поэтому его закрытие идет через метод help.close().
Когда метод close применяется к основному окну, браузер выдаст предупреждение о том, что программа пытается закрыть окно и согласны вы на такое или нет. Это сделано в целях безопасности и исключает возможность непроизвольного закрытия нужных окон.