DHTML для разработки динамических сайтов

Много лет назад, когда в конкурентной борьбе схватились два ведущих браузера Internet Explorer и Netscape Navigator, программисты и разработчики отчаянно ломали свои ученые головы в поисках некой фишки, изюминки, с помощью которой можно было бы привлечь основную массу тогдашних пользователей Интернета. Так возникла перспективная идея сделать сайты интерактивными, динамичными, активно реагирующими на действия посетителей и практически вступающими с людьми в своеобразный диалог.

Было решено расширить возможности обычного HTML кода за счет добавления программных сценариев на веб-страницы сайта. Это было рождение совершенно нового направления в области веб-технологий и веб-дизайна. Сайты на основе DHTML (динамический язык разметки гипертекста) реагируют буквально на каждое движение стрелкой мыши. Изменяются цвета и оттенки, уменьшается или увеличивается размер шрифта. Вплывают окна и фреймы, ведущие на другие страницы или даже сторонние сайты.

Хотя идея динамических сайтов принадлежала разработчикам компании Netscape, в итоге победил правильный маркетинг и массированная рекламная компания. Замечательный браузер Netscape Navigator благополучно почил. А простые юзеры получили хорошее наследство: динамические сайты на основе DHTML.

Особая хитрость метода состоит в том, что для воспроизведения динамических сайтов потребовались специальные браузеры. Обработка сайта происходит “на стороне клиента”. То есть, в самом браузере. С сервера хостинг-провайдера, где хранится сайт, на жесткий диск пользовательского компьютера загружается программный элемент, например на языке Java Script, и различные временные файлы. Затем в браузере производится слияние всех разрозненных элементов динамической страницы в действующий интерактивный сайт. За счет того, что некоторая часть файлов сайта уже сохранена на локальном компьютере, достигается существенное ускорение загрузки веб-страниц и происходящих на сайте событий. DHTML сайты намного шустрее статических, тем более сайтов на движках, где все происходит со знаком “наоборот”: все файлы хранятся на удаленном сервере, там же и собираются в единую страницу непосредственно перед загрузкой в браузер.

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

Несмотря на впечатляющие возможности, сама DHTML технология не представляет собой ничего особо замысловатого. Это тот же самый язык разметки гипертекста, расширенный за счет добавления JS-скриптов, и все это организовано в единое функциональное целое посредством DOM, объектной модели документа. Каждый элемент на динамической веб-странице связывается с макрокомандой, запрограммированной на совершение нескольких типов исполняемых сценариев, в зависимости от типа действий пользователя. То есть, ответ динамической страницы будет разным в зависимости от количества кликов, длительности нажатия либо некоторых жестов мышью в пространстве страницы.

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

Правда, в 2013 году и прогрессивный когда-то язык DHTML признан устаревшим. Сегодня на смену ему идет HTML5, стандарт, который является попыткой объединить воедино все лучшие находки последних лет.