Водораздел между программистами (работающими с серверными приложениями) и
Web-программистами (тратящими свое время на HTML, CSS и JavaScript)
существует уже давно. Однако Document Object Model (DOM) ликвидировала
пропасть и сделала работу с XML на сервере и с HTML на клиентском компьютере
возможной и эффективной. В этой статье Брэт МакЛафлин знакомит с Document
Object Model, объясняет ее использование в Web-страницах и начинает
исследовать ее использование с JavaScript.
Как и многие Web-программисты вы, возможно, работали с HTML. С HTML
программисты начинают работу над Web-страницей; HTML часто является последней
вещью, которую они делают по завершении работы с приложением или сайтом,
вылизывая до последнего бита размещение, цвет или стиль. И, таким же обычным,
как и использование HTML, является неправильное представление о том, что на
самом деле происходит с HTML, когда он поступает в браузер для визуализации на
экране. Перед тем как я углублюсь в то, что, по вашему мнению, может происходить
(и почему это, вероятно, не правильно), я хочу прояснить информацию о процессах,
вовлеченных в проектирование и обслуживание Web-страниц:
- Некто (обычно, вы!) создает HTML в текстовом редакторе или IDE.
- Затем вы загружаете HTML на Web-сервер, например, Apache HTTPD, и
делаете его общедоступным по Интернет или интранет.
- Пользователь запрашивает вашу Web-страницу в браузере, например Firefox
или Safari.
- Браузер пользователя выполняет запрос HTML на ваш Web-сервер.
- Браузер визуализирует страницу, полученную от сервера, в графическом и
текстовом виде; пользователи просматривают и активируют Web-страницу.
Хотя все это общеизвестно, вещи быстро становятся интересными. Фактически,
огромное количество "вещей", происходящих между шагами 4 и 5, и является
предметом рассмотрения данной статьи. Термин "вещь" действительно применим,
поскольку большинство программистов никогда не задумываются о том, что
действительно происходит с их размеченным документом, когда браузер пользователя
запрашивает его для отображения:
- Читает ли браузер просто текст в HTML и отображает его?
- Как насчет CSS, особенно если CSS находится во внешнем файле?
- И как насчет JavaScript - опять же, часто, во внешнем файле?
- Как браузер обрабатывает эти элементы и как отображает обработчики
событий, функции и стили на эту текстовую разметку?
Оказывается, ответом на все эти вопросы является Document Object Model.
Поэтому давайте без излишней суеты углубимся в DOM.
Продолжить просмотр статьи >>>
|