Понедельник, 29.04.2024, 20:56 Приветствую Вас Гость |
Главная | DHTML | Регистрация | Вход | RSS |
|
Последние годы развитие World Wide Web происходит по знаком Dynamic HTML (сокращенно DHTML). Трудно найти публикацию, посвященную WWW, в которой не шла бы речь о DHTML, но еще труднее найти публикацию, в которой это понятие было бы четко сформулировано. В этом разделе мы попытаемся дать определение Dynamic HTML, приемлемое для практического использования, и проследить этапы его становления. В самом общем виде можно сказать, что Dynamic HTML — это набор технологий, работающих на стороне клиента и призванных преодолеть статичность традиционных Веб-страниц. Точнее говоря, это технологии, которые обеспечивают
Для достижения перечисленных целей используются следующие методы:
Все эти явно разнородные методы покоятся, в действительности, на двух китах. Первым из них является интеграция HTML-документа, каскадных стилей и сценариев клиента, основанная на объектной модели документа. Вторым — использование компонентного программирования, позволяющего нам встраивать однажды разработанные компоненты во вновь создаваемые документы. Что же дает DHTML разработчику Веб-узлов? По нашему мнению, основных преимуществ три:
Объективности ради следует остановиться и на тех недостатках DHTML, о которых постоянно говорят сторонники "Веб-страниц, одинаково отображаемых всеми обозревателями". По их мнению, Dynamic HTML не оправдывает себя прежде всего потому, что он не стандартизован, и под каждый из популярных Веб-обозревателей нужно писать свою версию HTML-документа. Действительно, DHTML, как и всякая другая новая технология, не оформился пока в четкий стандарт. Тем не менее, усилия по созданию динамических страниц окупаются хотя бы по перечисленных выше причинам. Да и отсутствие стандарта никогда не мешало продвижению перспективных технологий (электроприборы, к примеру, существуют гораздо дольше, чем Интернет, но никого не смущает то, что часть из них рассчитана на 220В, а часть на 127В). Если присмотреться внимательнее, то противодействие распространению DHTML вызвано совершенно другой причиной. Дело в том, что до сих пор создание Веб-страниц не требовало специальных знаний, кроме знакомства с HTML и умения минимально манипулировать графикой. С появлением DHTML ситуация изменилась в корне: разработка динамической страницы требует программирования на сценарном языке, сопряженного с пониманием работы обозревателя на уровне генерации и обработки событий, владением основами пользовательского интерфейса и т. п. Иными словами, Веб-дизайн востребовал специалистов, что у многих вызывает неприятие. На самом деле, демократическая сущность WWW от этого не пострадала. По-прежнему любой желающий может создать, скажем, свою домашнюю страничку на уровне своих знаний, и DHTML этому не помеха. Другое дело, что профессиональные разработки должны соответствовать по уровню лучшим из наличествующих технологий, но на то они и называются профессиональными. Dymanic HTML родился в процессе конкурентной борьбы между Веб-обозревателями корпораций Netscape и Microsoft. Он появился в обозревателе Netscape Navigator 4, где были введены два новых тега LAYER и ILAYER, которые позволяли создавать на Веб-страницы слои с динамически изменяемыми свойствами (положением на странице, стилями отображения и т. п.). В ответ на это Microsoft в Internet Explorer 4 предложили намного более мощную поддержку динамических страниц, которая не использовала нестандартных тегов и опиралась на единый подход к HTML-документу как к дереву объектов с динамически изменяемыми атрибутами и свойствами стилей. Основное различие между двумя подходами состояло в парадигме самого понятия "динамическая страница". Netscape под этим понимал динамическое формирование Веб-страницы в процессе ее загрузки и последующую косметическую правку в ответ на действия пользователя без существенных изменений содержания страницы. Microsoft с самого начала занял позицию динамического формирования и изменения любых элементов страницы в любой момент ее существования. Понятно, что такое различие моделей DHTML в основных обозревателях никак не соответствует базовой концепции WWW как платформо-независимой информационной сети. Поэтому W3C был вынужден предпринять усилия по стандартизации Dynamic HTML и начал с разработки спецификации объектной модели документа (DOM), в основу которой была положена модель Microsoft, предложенная W3C в качестве Веб-стандарта. В результате в октябре 1998 г. был принята рекомендация W3C по первому уровню DOM (DOM 1), а в ноябре 2000 г. приняты рекомендации по второму уровню DOM (DOM 2), существенно расширяющему DOM 1. Тем временем Microsoft выпустил обозреватели Internet Explorer 5 и 5.5, которые существенно расширили возможности DHTML, причем во многом в направлениях, не предусмотренных стандартами W3C. Параллельно шла работа над обозревателем Netscape 6, который был призван вернуть часть рынка, завоеванного Microsoft (летом 2000 г. 86% пользователей WWW использовали Internet Explorer и только 14% — Netscape). С этой целью была создана независимая группа Mozilla.org, которая опубликовала в Сети исходные тексты обозревателя Netscape и собрала группу независимых разработчиков для приведения его в соответствие стандарту. Результатом их работы стало ядро обозревателя Gecko, почти в полной мере соответствующее стандартам HTML 4.0, CSS1 и DOM 1 (поддержка стандартов CSS2 и DOM 2 реализована частично) и одновременно сохранившее некоторую совместимость с моделью Netscape 4. Gecko является основой обозревателя Netscape 6, который после двух с половиной лет обещаний вышел, наконец, в свет в конце 2000 г. Выпущенная версия Netscape 6 пока очень сырая, и в ближайшее время следует ожидать появления ее новых сборок, которые должны будут заменить Netscape 4. Таким образом, сегодня на рынке присутствуют:
В соответствии со сказанным, наше описание Dynamic HTML построено следующим образом. В этой части мы рассматриваем спецификацию объектной модели документа согласно стандартам W3C и ее реализацию в MSHTML и Gecko. Нестандартные возможности Microsoft DHTML и Gecko DHTML рассматриваются в статьях WDH+ (за исключением объекта window, который пока не стандартизован, и в силу своей важности рассматривается здесь. Динамическую модель Netscape 4.x мы решили не описывать, как представляющую скорее исторический интерес, чем практический (решающим аргументом здесь послужил тот факт, что сама корпорация Netscape отказалась от поддержки слоев в новом обозревателе) |
|
Никита Батурин 2009 - 2024 |