Шаг 3.
Основы JavaScript.
Определение файла для JavaScript

    На этом шаге мы рассмотрим способ определения внешнего файла в JavaScript.

    Атрибут SRC тега <SCRIPT> позволяет определить файл как источник операторов JavaScript. Например:

.   .   .   .   .
<HEAD>
<TITLE> Пример страницы</TITLE>
<SCRIPT SRC ="myprog.js">
.   .   .   .   .
</SCRIPT>
</HEAD>
<BODY>
.   .   .   .   .

    Этот атрибут особенно полезен для разделения функций при большом количестве страниц. JavaScript-операторы в пределах тега <SCRIPT> с атрибутом SRC игнорируются, если в файле нет ошибок. Например, можно поместить следующий оператор между <SCRIPT SRC ="…"> и </SCRIPT>:

    document.write("Не могу найти JS-файл");

    Этот оператор будет выполняться только в том случае, если при загрузке файла произойдет какая-либо ошибка. Параметр SRC может определить любой относительный или абсолютный URL-адрес.

    Внешние файлы JavaScript должны содержать только JavaScript-определения функций и операторы, в них не может быть тегов HTML. Внешние файлы JavaScript должны иметь расширение .js.

    Приведем пример, иллюстрирующий сказанное. Создайте следующий HTML-документ:

<HTML>
<HEAD>
<TITLE>Использование файла js</TITLE>
<SCRIPT  LANGUAGE="JavaScript" SRC="pr.js">
<!--
  alert ("Не загрузился JS-файл");
//-->
</SCRIPT>
<NOSCRIPT>
Не загрузился JS-файл.
</NOSCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>
Текст этого документа можно взять здесь.

    Как видно из текста этого документа параметр SRC содержит имя файла, содержащего операторы JavaScript, который должен быть расположен в той же папке, что и данный HTML-документ. Если файл pr.js в папке отсутствует, то появится окно с сообщением "Не загрузился JS-файл".

    Однако в некоторых случаях, это сообщение не выводится (это зависит от настроек браузера). Вместо него в левом нижнем углу окна браузера появляется значок "восклицательный знак" с фразой "Выполнено, но с ошибками на странице" (рисунок 1), который сигнализирует о наличии ошибок.


Рис.1. Вывод сообщения об ошибке

    Создадим файл pr.js следующего содержания:

    document.write("<FONT COLOR='RED'>Это красный текст</FONT>");
после чего снова просмотрим в браузере HTML-документ, приведенный на этом шаге. Результат просмотра будет аналогичен приведенному на предыдущем шаге.

    В заключение разберем назначение тэга-контейнера <NOSCRIPT>. Его содержимое отображается тогда, когда браузер не поддерживает выполнение скриптов. Для иллюстрации этой особенности запретим браузеру отображать активное содержимое. Выполним в браузере Microsoft Internet Explorer пункт меню Сервис | Свойства обозревателя и на вкладке Дополнительно уберем "галочку" с пункта "Разрешать запуск активного содержимого на моем компьютере" (рисунок 2).


Рис.2. Установка запрета на запуск активного содержимого

    После подтверждения сделанных изменений снова в браузере просмотрим последний HTML-документ. Мы увидим такую картину:


Рис.3. Отображение документа при запрете запуска активного содержимого

    Мы видим, что вверху окна браузера появилось предупреждение. Щелчок по нему правой кнопкой мыши вызывает появление контекстно-зависимого меню, в котором выбор пункта "Разрешить заблокированное содержимое" позволит выполнить скрипт, и мы получим результат, аналогичный приведенному на рисунке предыдущего шага. Однако в данный момент в окне браузера мы видим фразу, которая говорит о том, что сейчас выполнение скрипта запрещено. Это как раз та фраза, которую мы поместили в тэг-контейнер <NOSCRIPT>.

    При создании скриптов мы будем часто использовать функцию alert(). Эта функция выводит заданный в ней текст в диалоговом окне с единственной кнопкой OK. Если текст - параметр функции alert() - слишком длинный, его можно записать в нескольких строчках, используя знак "+" (операцию соединения):

    alert("язык JavaScript был разработан в " +
    "1995 году фирмой Netscape для второй" +
    "версии своего браузера");

    Операция соединения не означает разрыв строки в окне браузера. Для перевода строк нужно использовать символы "\n":

    alert ("Первая строка.\nСтрока вторая.");

    В заключение отметим, что все операторы JavaScript заканчиваются символом "точка с запятой".

    На следующем шаге мы рассмотрим переменные в JavaScript.




Предыдущий шаг Содержание Следующий шаг