страница 95
<html> <head> <title>An onLoad script</title> <script type="text/javascript"> <!-- function done() { alert("The page has finished loading."); //Загрузка завершена } // --> </script> </head> <body onload="done()"> Текст страницы. </body> </html>
Листинг 5.7 Запуск сценария с помощью обработчика события onload
He стоит беспокоиться по поводу использования фигурных скобок и других непонятных конструкций в листинге 5.7. Это не принципиально. Обратите внимание на структуру документа и порядок выполнения операций. Страница полностью загружается без выполнения операторов сценария, хотя при этом в память и загружается функция done(). Так что ее можно запустить в любой момент. После загрузки документа браузер вызывает обработчик события onload, который и запускает функцию done(). Только после этого пользователь увидит диалоговое окно с предупреждением.
Запустить сценарий в ответ на действия пользователя можно практически так же, как в предыдущем примере - отсроченный сценарий выполнялся сразу после загрузки документа. Идея заключается в том, что в разделе заголовка определяется только функция сценария, а обработчик события (скажем, элемента формы) вызывает эту функцию из тела страницы. В листинге 5.8 приведен пример сценария, который запускается при щелчке на кнопке.