Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Введение в Веб программирование.doc
Скачиваний:
81
Добавлен:
07.11.2018
Размер:
4.42 Mб
Скачать

Включение скриптов JavaScript в html-код

Для того чтобы добавить сценарий JavaScript на Web-страницу, используется пара дескрипторов <script> и </script>. Дескриптор <script> указывает браузеру рассматривать дальнейший текст как скрипт. Обнаружив дескриптор </script>, браузер возвращается к выполнению HTML.

Традиционное включение скрипта в HTML- документ имело вид:

<!-- пример #pr1: шаблон HTML для скрипта -->

<html>

<head>

<title> Шаблон HTML </title>

<script language="javascript">

<!--Маскируемся, начало JavaScript

//…код скрипта

// снятие маскировки; конец JavaScript -->

</script>

</head>

<body >

</body></html>

Использование атрибута language является устаревшим. Вместо него используется атрибут type, значением которого является "text/javascript":

<script type="text/javascript">

//JavaScript код

</script>

Рассмотрим пример.

<!-- пример pr2 -->

<html>

<head>

<title>Наша начальная страница</title>

</head>

<body>

<p>Добро пожаловать на первую скриптовую web-страницу.</p>

<script type="text/javascript">

document.write("Hello");

</script>

</body>

</html>

Метод write() объекта document позволяет отображать результат сценария на Web-странице.

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

1. В разделе body, в приведенном выше примере. В этом случае результат сценария отображается на Web-странице при ее загрузке в браузере.

2. В заголовке программы между парой дескрипторов <head>. Это гарантирует выполнение скрипта до начала загрузки основного HTML-кода страницы. Сценарий, размещенный в заголовке, может не выполняться при загрузке страницы, а использоваться другими сценариями как функция - группа операторов JavaScript, выполняемых как одно целое.

3. В дескрипторе HTML. Такая конструкция называется обработчиком событий и позволяет выполнять сценарий JavaScript вместе с дескриптором. Обработчик событий представляет собой отдельный тип сценария, который не требует использования дескриптора <script> для его обозначения. Рассмотрим пример:

<!-- Использование кнопки и события -->

<html> <body>

<form>

<input type="button" value="click me" onclick="window.alert

(' Hello!')"> </form>

</body>

</html>

4. В отдельном файле с расширением js. B этом случае скрипт объявляется в HTML-коде с помощью тега <script> с атрибутом src, в котором прописывается путь к файлу. Например

<script type="text/javascript" src="/jspr/pr.js"></script>

В этом варианте в директории /jspr/ должен находиться файл pr.js, который содержит код JavaScript без тегов <script> и </script>.

Отметим, что символы нижнего и верхнего регистров в JavaScript различаются, как и в C++. Операторы должны отделяться друг от друга точкой с запятой, только если они находятся в одной строке.

Если придерживаться спецификации XHTML, то имена тегов и их атрибуты также должны быть указаны в нижнем регистре.

Создание простых сценариев

Пример : Сценарий определения текущего времени

Одно из привычных использований JavaScript — это отображение даты и времени в соответствии с временным поясом места жительства пользователя. Для получения текущей даты и времени используется объект Date и его методы.

<!-- пример pr3 -->

<html>

<hеаd>

<title>Отображение даты</title>

</hеаd>

<body>

<h1>Текущее время и дата</h1>

<p>

<script type="text/javascript">

var now = new Date();

var localtime=now.toString();

var hours=now.getHours();

var mins=now.getMinutes();

var secs=now.getSeconds();

document.write("<b>Текущее время: </b>" + localtime + "<br>");

document.write("<font size='+5'>");

document.write (hours + ":" + mins + ":" + secs);

document.write("</font>");

</script>

</body>

</html>

Пример: Бегущая строка

<!-- пример pr4 -->

<html>

<hеаd><title>Пример бегущей строки</title>

<script type="text/javascript">

var msg = "Это пример бегущей строки.";

var spacer = "... ...";

var pos = 0;

function ScrollMessage()

{window.status = msg.substring(pos, msg.length) + spacer + msg.substring(0,pos);

pos++;

if (pos > msg.length) pos = 0;

window.setTimeout("ScrollMessage()",200);

//установка времени прерывания

}

ScrollMessage();//вызов функции

</script>

</head>

<body>

<h1>Пример бегущей строки</h1>

Взгляните на строку состояния в нижней части окна браузера-окне состояния.

</body></html>

Пример : Смена изображения

<!—пример pr5: Использование события для смены изображения-->

<html> <body>

<h1>Событие onmouse </h1>

<a href="http://bsu.by">

<img src="s1.jpg" name="ris" width="100px" hight="100px"

onmouseover="ris.src='s2.jpg';

"onmouseout="ris.src='s3.jpg';">

</a>

</body>

</html>