Программирование

JAVASCRIPT
Языки программирования
Статьи Каталог популярных сайтов

Помимо управления окнами, в рамках объектной модели браузера, браузерами обычно обеспечивается поддержка следующих сущностей:

  • управление фреймами;
  • поддержка задержки в исполнении кода и зацикливания с задержкой;
  • системные диалоги;
  • управление адресом открытой страницы;
  • управление информацией о браузере;
  • управление информацией о параметрах монитора;
  • ограниченное управление историей просмотра страниц;
  • поддержка работы с HTTP cookie.

Объектная модель документа.

Объектная модель документа— интерфейс программирования приложений для HTML и XML-документов. Согласно DOM, документу можно поставить в соответствие дерево объектов, обладающих рядом свойств, которые позволяют производить с ним различные манипуляции:

  • получение узлов;
  • изменение узлов;
  • изменение связей между узлами;
  • удаление узлов.

Встраивание в веб-страницы

Расположение внутри страницы

Для добавления JavaScript-кода на страницу, можно использовать теги script /script, которые рекомендуется, но не обязательно, помещать внутри контейнера head. Контейнеров script в одном документе может быть сколько угодно.

Скрипт, выводящий модальное окно с классической надписью «Hello, World!» внутри браузера:

<script type="text/javascript">
alert('Hello, World!');
</script>

Расположение внутри тега

Спецификация HTML описывает набор атрибутов, используемых для задания обработчиков событий. Пример использования:

<a href="delete.php" onclick="return confirm('Вы уверены?');
">Удалить</a>

В приведённом примере при нажатии на ссылку функция confirm('Вы уверены?'); вызывает модальное окно с надписью «Вы уверены?», а return false; блокирует переход по ссылке. Разумеется, этот код будет работать только если в браузере есть и включена поддержка JavaScript, иначе переход по ссылке произойдёт без предупреждения.

Использование кода JavaScript в контексте разметки страницы в рамках ненавязчивого JavaScript расценивается как плохая практика. Аналогом (при условии снабжения ссылки идентификатором alertLink)

<a href="delete.php" id="alertLink">Удалить</a>
приведённого примера может выступать, например, следующий фрагмент JavaScript:
window.onload = function() {
    var linkWithAlert = document.getElementById("alertLink");
    linkWithAlert.onclick = function() {
        return confirm('Вы уверены?');
    };
};

Вынесение в отдельный файл

Есть и третья возможность подключения JavaScript— написать скрипт в отдельном файле, а потом подключить его с помощью конструкции

<script type="text/javascript" src="http://Путь_к_файлу_со_
скриптом"></script>

Атрибуты элемента script

Элемент script, широко используемый для подключения к странице JavaScript, имеет несколько атрибутов.

  • Обязательный атрибут type для указания MIME-типа содержимого.

В запросе комментариев RFC-4329, определяющем MIME-тип, соответствующий JavaScript, указано:

Известно, что использование «text» в качестве типа верхнего
уровня данного типа содержимого проблематично.Поэтому данный
документ определяет text/javascript и text/ecmascript, отме-
чая их «устаревшими».Использование экспериментальных и неза-
регистрированных медиатипов, таких как перечисленные в части
выше, не приветствуется. Медиатипы
  • application/javascript;
  • application/ecmascript.
которые также определяются в этом документе, предназначены
для практического использования, им следует отдавать пред
почтение.

Однако, согласно спецификации HTML 4.01 в качестве значения type должно быть указано устаревшее "text/javascript". Так как JavaScript является языком программирования по умолчанию во всех браузерах, начиная с Netscape 2, Дуглас Крокфорд придерживается мнения о нецелесообразности использования атрибута type, рекомендуя указывать его в XHTML, так как, хотя он, по мнению Крокфорда, и не нужен, но обязателен, и не указывать в HTML.

  • необязательный атрибут src, принимающий в качестве значения адрес к файлу со скриптом;
  • необязательный атрибут charset, используемый вместе с src для указания используемой кодировки внешнего файла;
  • необязательный атрибут defer, используемый для того, чтобы показать, что скрипт не генерирует никакого содержимого (что означает, в частности, то, что в этом скрипте отсутствует вызов document.write()).

При этом атрибут language(language="JavaScript"), несмотря на его активное использование (в 2008 году этот атрибут был наиболее часто используемым у тега <script>), относится к не рекомендуемым (deprecated), отсутствует в DTD, поэтому считается некорректным.

Область применения

Веб-приложения

JavaScript используется в клиентской части веб-приложений: клиент-серверных программ, в котором клиентом выступает браузер, а сервером— веб-сервер, имеющих распределённую между сервером и клиентом логику. Обмен информацией в веб-приложениях происходит по сети. Одним из преимуществ такого подхода является тот факт, что клиенты не зависят от конкретной операционной системы пользователя, поэтому веб-приложения являются кроссплатформенными сервисами.

AJAX

JavaScript используется в AJAX, популярном подходе к построению интерактивных пользовательских интерфейсов веб-приложений, заключающемся в «фоновом» асинхронном обмене данными браузера с веб-сервером. В результате, при обновлении данных веб-страница не перезагружается полностью и интерфейс веб-приложения становится быстрее, чем это происходит при традиционном подходе (без применения AJAX).

Comet

Comet— зонтичный термин, описывающий механизм работы веб-приложений, использующих постоянные HTTP-соединения, что позволяет веб-серверу отправлять данные браузеру без дополнительного запроса со стороны браузера. Для таких приложений используются технологии, непосредственно поддерживаемые браузерами. В частности, в них широко используется JavaScript.

Браузерные операционные системы

Пример сеанса <em>eyeOS</em>
Пример сеанса eyeOS
JavaScript широко используется в браузерных операционных системах. Так, например, исходный код IndraDesktop WebOS на 75% состоит из JavaScript, код браузерной операционной системы IntOS— на 70%. Доля JavaScript в исходном коде eyeOS— 5%, однако и в рамках этой операционной системы JavaScript играет важную роль, участвуя в визуализации на клиенте и являясь необходимым механизмом для коммуницирования клиента и сервера.






Букмарклеты

JavaScript используется для создания небольших программ, размещаемых в закладки браузера. При этом используются URL-адреса со спецификатором javascript:.

Пользовательские скрипты в браузере

Пользовательские скрипты в браузере— это программы, написанные на JavaScript, выполняемые в браузере пользователя при загрузке страницы. Они позволяют автоматически заполнять формы, переформатировать страницы, скрывать нежелательное содержимое и встраивать желательное для отображения содержимое, изменять поведение клиентской части веб-приложений, добавлять элементы управления на страницу и т.д.

Для управления пользовательскими скриптами в Mozilla Firefox используется расширение Greasemonkey; Opera и Google Chrome предоставляют средства поддержки пользовательских скриптов и возможности для выполнения ряда скриптов Greasemonkey.

1-2-3-4-5

Hosted by uCoz