JavaScript. Подробное руководство, 6-е издание, стр. 173
<b><script language="javascript"></b><b>// Здесь располагается JavaScript-код...</b><b></script></b>Атрибут
<b>language</b>Когда веб-броузер встречает элемент
<b><script></b><b>type</b><b><script></b><b>type</b><b>text</b><b>HTMLElement</b><b>script</b><b>src</b><b>type</b>13.2.4. Обработчики событий в HTML
JavaScript-код, расположенный в теге
<b><script>,</b><b>Element</b><b>onclick</b><b>onmouseover</b>Свойства обработчиков событий, такие как
<b>onclick</b><b>onchange</b><b><input type="checkbox" name="options" value="giftwrap"</b><b>onchange="order.options.giftwrap = this.checked;"></b>Обратите внимание на атрибут
<b>onchange</b>Атрибуты обработчиков событий, включенных в разметку HTML, могут содержать одну или несколько JavaScript-инструкций, отделяемых друг от друга точками с запятой. Эти инструкции будут преобразованы интерпретатором в тело функции, которая в свою очередь станет значением соответствующего свойства обработчика события. (Подробное описание, как выполняется преобразование текстового содержимого HTML-атрибутов в функции на языке JavaScript, приводится в разделе 17.2.2.) Однако обычно в HTML-атрибуты обработчиков событий включаются простые инструкции присваивания, как в примере выше, или простые вызовы функций, объявленных где-то в другом месте. Это позволяет держать большую часть JavaScript-кода внутри сценариев и ограничивает степень взаимопроникновения JavaScript- и HTML-кода. На практике многие веб-разработчики считают плохим стилем использование HTML-атрибутов обработчиков событий и предпочитают отделять содержимое от поведения.
13.2.5. JavaScript в URL
Еще один способ выполнения JavaScript-кода на стороне клиента - включение этого кода в URL-адресе вслед за спецификатором псевдопротокола
<b>javascript:</b><b>javascript:</b><b>undefined</b>URL вида
<b>javascгipt:</b><b>href</b><b><а>,</b><b>action</b><b><form></b><b>window.ореп().</b><b><a href="JavaScript:new Date().toLocaleTimeString();"></b><b>Который сейчас час?</b><b></a></b>Некоторые броузеры (такие как Firefox) выполняют программный код в URL и используют возвращаемое значение в качестве содержимого нового отображаемого документа. Точно так же, как при переходе по ссылке http:, броузер стирает текущий документ и отображает новое содержимое. Значение, возвращаемое примером выше, не содержит HTML-теги, но если бы они имелись, броузер мог бы отобразить их точно так же, как любой другой HTML-документ, загруженный в броузер. Другие броузеры (такие как Chrome и Safari) не позволяют URL-адресам, как в примере выше, затирать содержимое документа - они просто игнорируют возвращаемое значение. Однако они поддерживают URL-адреса вида:
<b><a href="JavaScript: alert (new Date().toLocaleTimeString()); "></b>