- •1 Цель работы
- •2 Порядок выполнения работы
- •Импортированные стили
- •3) Inline-стили (встроенные с помощью атрибута style непосредственно в теги документа)
- •1 Цель работы
- •2 Порядок выполнения работы
- •3. Ответить на теоретические вопросы по данной теме руководителю своей группы.
- •4. Оформить отчет по самостоятельной работе, который должен содержать:
- •3. Методические указания.
- •6. Прочесть и выполнить все требования из раздела основные понятия
- •Вернемся к разбору сценария
- •Задание
- •Раздел основные понятия
- •Раздел исправление ошибок
- •Строка ошибки
- •Что дальше?
- •Множественные ошибки
- •Отсутствие определения
- •Задание
- •Код с ошибкой
- •Возможное решение
Раздел исправление ошибок
Говорят, что наилучший способ исправить ошибку — это ее не совершать, но сказать легче, чем сделать. Тем не менее можно свести количество ошибок к минимуму, пользуясь текстовым редактором без полей. Кроме того, отводите каждой команде JavaScript отдельную строку. Ни к чему разбивать длинные строки на несколько коротких. Это само по себе может привести к ошибке. И все же, можно поспорить, что каждый раз, принимаясь за создание сценариев, вы будете получать такие сообщения. Так что давайте разберемся, как их устранять.
В этих всплывающих окошках сообщений об ошибке есть одна замечательная вещь: они сами говорят, где и в чем состоит проблема. Взгляните на сообщение. У нас синтаксическая ошибка, означающая неправильную конфигурацию сценария, и находится она на строке 29. Более того, сообщение об ошибке прямо указывает на проблемную область. Было бы неплохо иметь такое и в HTML?
Строка ошибки
Когда сообщение об ошибке указывает на строку ошибки, то строку с ошибкой нужно отсчитывать от самого верха документа HTML, а не от первой строки JavaScript. Например, в приведенном ниже документе допущена ошибка в строке 9. Это ошибка синтаксиса, так как экземпляр (параметра) не заканчивается на той же строке, где начался. Видите, как скобка перескочила на следующую строчку?
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<SCRIPT LANGUAGE="javascript">
document.write("текст для страницы
"
)
</SCRIPT>
</BODY>
</HTML>
Но почему ошибка на строке 9, а не 8? Потому, что счет начинается с верхнего края документа HTML, не пропуская ни одной строки. Вот этот документ еще раз с пронумерованными строками.
(строка 1) <HTML>
(строка 2) <HEAD>
(строка 3) <TITLE></TITLE>
(строка 4) </HEAD>
(строка 5) <BODY>
(строка 6)
(строка 7) <SCRIPT LANGUAGE="javascript">
(строка 8) document.write("text for the page"
(строка 9) )
(строка 10) </SCRIPT>
(строка 11) </BODY>
(строка 12) </HTML>
Так что считайте все строки, даже пустые.
Что дальше?
Как только строка с ошибкой найдена, необходимо решить, что делать. Чаще всего это будет синтаксическая ошибка — либо разорванная строка, либо опечатка, либо двойные кавычки вместо одинарных (несбалансированные кавычки) и тому подобное.
Если это ошибка времени выполнения, значит, команда, на которую указывает сообщение, не укладывается в логическую последовательность. Например, сценарий вызывает кнопку с помощью команды, которая на самом деле вызывает текстовое поле.
Множественные ошибки
Ничто не раздражает больше, чем многократные сообщения об ошибках. Можно только сидеть и смотреть, как на экране плодятся окна. Можно решить, что многократные окна сообщений означают многократные ошибки. Не всегда.
JavaScript — это чрезвычайно логичный язык, требующий, чтобы все шло своим чередом, в линейной последовательности. Допустим, имеется 10 ошибок в длинном сценарии. Сообщения накладываются одно на другое, и последняя обнаруженная компьютером ошибка окажется сверху. Не пытайтесь сразу ее исправлять, возможно, в действительности ее даже не существует.
Может случиться так, что первая ошибка сценария вызывает все остальные. Так что исправлять ошибки следует последовательно с начала документа HTML. Сколько раз бывало так, что выскакивает 20 окон с ошибками, а разрешить все проблемы удается исправлением одной единственной первой ошибки!
Поэтому исправлять ошибки надо по одной от начала до конца. И каждый раз, исправив одну ошибку, запускайте сценарий. Можно получить 20 сообщений об ошибках, а исправлять придется одну или две.
