Чтобы аплет NervousText. class выполнил анимацию строки "I'm nervous until i have my Java.", при внедрении аплета в Web-страницу нужно ука­зать и дескриптор <param>:

<applet codebase = "/java" code = "NervousText. class"

width = "510" height = "50">

<param name = "text" value = "I'm nervous until I have my Java.">

</applet>

После того, как вы загрузите HTML-файл, содержащий задающий параметр дескриптор <param>, в свой браузер, аплет будет использовать текст параметра.

Если передаваемое вами значение параметра изменяет объем пространства, необходимого аплету для отображения своих выходных данных, вы должны соот­ветствующим образом увеличить значения атрибутов width и height дескрипто­ра <applet>. В данном примере увеличение длины анимированного текста тре­бует увеличения ширины области, отведенной под аплет на Web-странице. Если размер заданной вами (с помощью атрибутов width и height дескриптора <applet>) области слишком мал, браузер просто отсечет ту часть выходных дан­ных аплета, которая не помещается в область. (Если в документации по аплету не указаны размеры его области вывода или если вы передаете значение пара­метра, изменяющее выходные данные аплета, вам может понадобиться провести несколько экспериментов с различными значениями атрибутов width и height, пока вы не найдете удобоваримые размеры.)

Понятие файлов Java-архивов (.jar)

Одно из критических замечаний в адрес Java-аплетов связано со временем, необходимым Web-браузеру на выгрузку файлов, входящих в состав того или ино­го аплета. Каждый раз, когда браузер извлекает Web-страницу с внедренным аплетом, браузер должен извлекать аплет, как и графические изображения, звуковые файлы и прочие внедренные объекты. Большим и более сложным аплетам зачастую требуется несколько файлов классов, каждый из которых браузер дол­жен выгрузить, прежде чем он сможет запустить аплет.

НЕ нашли? Не то? Что вы ищете?

Чтобы уменьшить время, затрачиваемое на загрузку, программисты на Java ча­сто сохраняют файлы аплета (файлы классов, графические файлы, звуковые фай­лы и т. д.) в файле Java-архива (или.jar). Файл .jar можно представить себе как нечто подобное сжатому zip-файлу. Сохраняя файлы аплета в одном .jar-файле, программист уменьшает время, необходимое Web-браузеру на то, чтобы выгрузить аплет с Web-сервера.

Чтобы использовать при внедрении объекта .jar-файл, необходимо добавить в дескриптор <applet> атрибут archive, как показано ниже:

<applet code = "JavaClock. class" width = "150" height = "150"

archive "Clock. jar">

</applet>

В данном случае, обнаружив дескриптор <applet>, браузер установит HTTP-соединение с сервером и запросит файл Java-архива с именем clock.jar. Если файла архива не существует, большинство браузеров предпримут попытку извлечь вместо него отдельные .class-файлы аплета. Обратите внимание, что имя файла архива не обязательно должно совпадать с именем .class-файла аплета.

Атрибут codebase

Если вы храните свои .class-файлы в папке, отличной от той, в которой хранятся HTML-документы, вы должны указывать в дескрипторе <applet> атри­бут codebase, чтобы сообщить Web-браузеру, где найти .class-файл, заданный атрибутом code. Предположим, например, вы храните свои файлы Web-страниц в папке HTDOCS Web-сайта, а .class-файлы — в папке с именем Classes. Если обе папки находятся в корневой папке Web-сайта, для внедрения аплета JavaClock.class Вам понадобится следующий атрибут codebase в дескрипторе <applet>:

<applet codebase = "/Classes" code = "JavaClock. class"

width = "150" height = "150">

</applet>

С помощью атрибута codebase можно также дать браузеру указание внедрить в Web-страницу Java-аплет, находящийся на другом Web-сайте. Чтобы внедрить удаленный аплет, просто укажите в атрибуте codebase полный URL-адрес папки, содержащей .class-файлы аплета. Например, чтобы внедрить в свою Web-стра­ницу аплет стрелочных часов, находящийся в папке Classes на сайте www. , следует воспользоваться приведенным ниже атрибутом codebase:

<applet codebase = "http://www. /classes"

code = "JavaClock. class" width = "150" height = "150">

</applet>

Будьте осторожны, внедряя аплеты, находящиеся на других Web-сайтах. Помните, что Web-браузер должен выгрузить все .class-файлы аплета после извлечения страницы с внедренным аплетом. Если кто-нибудь удалит .class-файлы или переместит их в другую папку, Web-браузер не сможет извлечь их и, следовательно, не сможет отобразить аплет на вашей Web-странице. За исключением случаев, когда содержимое на удаленном сайте вами контролируется, выгрузите .class-файлы аплета в папку на своем Web-сайте, чтобы аплет был доступен всегда, когда он понадобится.

Внедрение в Web-страницу объекта ActiveX

Как и Java-аплет, объект ActiveX предоставляет программный код, который Web-браузер должен выполнять как составляющую содержимого вашей Web-стра­ницы. Чтобы внедрить в Web-страницу объект ActiveX, вставьте объект так же, как вы бы вставили аплет, только вместо дескриптора <applet> для помещения на страницу объекта ActiveX воспользуйтесь начальным и конечным дескрипто­рами объекта (<object></object>).

Предположим, например, вы хотите отобразить на своей странице биржевую сводку с финансового Web-сайта Microsoft Network (MSN), который находится по адресу http://moneycentrai. . Для этого вам потребуется вставить в HTML-код своей Web-страницы, — в то место, где на Web-странице должна по­явиться показанная на рис. 9.11 биржевая сводка, — следующий код:

<object id = "StockTicker" width = "100%" height = "34"

codebase = "http://fdl. /public/investor/v7

/ticker. cab#version=7,1999,1104,1">

<param name = "ServerRoot" value = "http://moneycentral. " />

<param name = "NewsTarget" value = "newstop" />

<param name = "BackgroundColor" value = "0x00ADD8E6" />

<! -- Следующий дескриптор <embed> позволяет запускать элемент управления

ActiveX в браузере Netscape Navigator 6 (и выше) —->

<embed type = "application/x-eskeractivex" id = "StockTicker"

clsid = "52ADE2 93-85E8-HD2-BBB0EA2 81"

codebase = "http://fdl. /public/investor/v7

/ticker. cab#version=7,1999,1104,1"

width = "100%" height = "34" serverroot = "http://moneycentral. "

backgroundColor = "0x00ADD8E6"

newstarget = "_newstop" value = "0x00ADD8E6" />

</object>

Просмотрев содержимое дескриптора <object>, вы обнаружите некоторые сходные черты с дескриптором <applet>. Атрибуты в дескрипторе <object> име­ют следующее назначение:

id

Уникальное имя, которое вы присваиваете объекту, чтобы другие объекты на той же Web-странице могли взаимодействовать с объектом, и чтобы вы могли работать с объектом (по имени) в сценариях, вставленных в страницу.

width, height

Начальные размеры объекта в пикселях. Имейте в виду, что объект ActiveX может изменять размер (и месторасположение) своей области просмотра. Хотя биржевая сводка в данном примере и Shockwave-анимация Macromedia (которую вы будете внедрять в следующем примере) сохраняют заданные размеры, всплывающее меню ActiveX, например, будет сначала иметь размеры стандартной кнопки, однако увеличится до разме­ров, необходимых для отображения всех пунктов меню.

type

Необязательный атрибут, идентифицирующий тип внедряемого со­держимого.

classid

Атрибут, идентифицирующий реализацию объекта: то есть, имя исполняемой программы, которую вы хотите выполнить. Длинная строка цифр и букв, присвоенная атрибуту classid - это 128-битовое значение, называемое глобально-уникальным идентификатором (globally unique identifier - GUID). Программист, написавший приложение ActiveX, с помощью специального программного средства (GUIDGEN. EXE) создает уни­кальный GUID — что значит, что никакие две программы не могут иметь
одинаковые GUID-ндентификаторы.

codebase

Атрибут, задающий местонахождение, откуда браузер сможет (если понадобится) выгрузить программу, заданную атрибутом classid. (Если браузер ранее выгрузил и установил объект ActiveX, он будет ис­пользовать локальную копию вместо того, чтобы загружать программу за­ново.) Если вы опустите атрибут codebase, браузер будет искать реализа­цию (то есть объект ActiveX) в той же папке, что и документ, в который вы внедрили объект. В данном примере атрибут codebase сообщает брау­зеру, что реализация находится внутри .cab-файла. (Программисты поме­щают программу, требующую для установки более одного файла, в .cab-файл,- также, как разработчики на Java используют. jar-файлы.)

param

Значения, которые должны быть переданы программе ActiveX во время выполнения. Обычно параметры содержат настроечную информацию и начальные значения переменных программы.

Хотя значения атрибутов classid и codebase кажутся неподдающимися рас­шифровке, пусть вас не волнует то, как эти значения генерируются. Програм­мист, написавший программу ActiveX или документацию на программу, выгру­женную вами из Internet, снабдит вас обоими этими значениями. Ваша же главная задача как дизайнера — решить, что должен делать объект ActiveX и где он должен находиться на вашей Web-странице. Программисты напишут и ском­пилируют программу и сохранят код (то есть реализацию) в папке на Web-серве­ре. Почитав документацию (или спросив у программиста), вы просто "вставите" предоставленные вам значения атрибутов classid и codebase.

Как сделать, чтобы объекты ActiveX работали и с Netscape Navigator, и с Internet Explorer

К сожалению, две компании, браузерами которых, по всей вероятности, будут пользоваться 95% посетителей вашего сайта, не смогли достичь согласия в воп­росе "наилучшего" способа внедрения внешних программ в Web-страницы. В то время как в Internet Explorer для повышения функциональных возможностей бра­узера используются дескрипторы <object> и объекты ActiveX, в Netscape Navigator применяются дескрипторы <embed> и подключаемые модули (которые представляют собой внешние вспомогательные программы).

Результатом — то есть тем, что как раз и заботит вас как дизайнера — стало то, что Netscape Navigator не будет запускать объект ActiveX, пока вы не устано­вите специфический подключаемый модуль. Кроме того, Netscape Navigator тре­бует использования для внедрения программы, которую должен выполнить брау­зер, дескриптора <object>, а не дескриптора <embed>. К счастью, вы можете вставить начальный и конечный дескрипторы внедрения (<embed></embed>) внутри начального и конечного дескрипторов объекта (<object></object>), и каждый из браузеров будет игнорировать дескриптор, предназначенный для дру­гого браузера. Подключаемые модули, которые вы должны загрузить и устано­вить, будут разными в зависимости от вашей версии Netscape Navigator.

Подключаемые модули, снабжающие Netscape Navigator поддержкой ActiveX, можно найти на нескольких Web-сайтах. В первую очередь стоит посетить http://, откуда вы сможете выгрузить подключаемый модуль, поддер­живающий широкий диапазон объектов ActiveX. Кроме того, найти ссылки на другие подключаемые модули и пояснения действий, которые вам необходимо будет предпринять для установки в зависимости от вашей конкретной версии NetScape, можно на http://mozilla. org.

Например, для воспроизведения Shockwave-анимации (ants.swf), хранящейся в той же папке, что и ваша Web-страница, вы могли бы вставить в страницу — там, где должна появиться анимация — следующие строки:

<object classid = "clsid:D2 7CDB6E-AE6D-llcf-96B8-444"

codebase = "http://download. /pub/Shockwave/cabs

/flash/swflash. cab#version=5,0,30,0"

width = "200" height = "200">

<param name = "movie" value = "ants. swf" />

<param name = "quality" value = "high" />

<param name = "salign" value = "TL" />

<embed src = "ants. swf" quality = "high"

pluginspage = "http://www. /Shockwave/download

/index. cgi? Pl_Prod_Version=ShockwaveFlash"

type = "application/x-shockwave-flash"

width = "200" height = "200" salign = "TL" />

<noembed> Извините, ваш браузер не поддерживает объекты ActiveX и

подключаемые модули. </noembed>

</object>

Обнаружив приведенный выше код, браузер Internet Explorer для выполнения Shockwave-анимации (и, если необходимо, выгрузки проигрывателя Shockwave) будет использовать атрибуты и параметры, найденные до дескриптора <embed>. Браузер Netscape Navigator, с другой стороны, проигнорирует HTML-код до деск­риптора <embed> и будет использовать для воспроизведения анимации (и, если необходимо, выгрузки подключаемого модуля) код, находящийся между началь­ным и конечным дескрипторами внедрения (<embed></embed>).

Понятие подписанных объектов

Поскольку объекты ActiveX могут быть небезопасными, следует выгружать и устанавливать объекты ActiveX, полученные только от тех программистов и ком­паний, которым вы доверяете. Зачастую программисты, которые разрабатывают заслуживающие доверия объекты ActiveX, снабжают их цифровыми подписями, проверив которые, пользователи, выгружающие объекты, могут удостовериться в подлинности лица или компании, заявляющих, что они разработали данный объект (то есть в том, что они являются теми, за кого себя выдают). Кроме того, если объект ActiveX содержит действительный сертификат, пользователи могут быть уверенными в том, что какой-либо хакер не перехватил и не изменил объект в процессе передачи его по Internet. В Windows, например, многие пользователи поручают своим браузерам устанавливать и использовать подписан­ные объекты автоматически, не спрашивая у пользователя разрешения на уста­новку таких объектов. Если же в соответствии с уровнем безопасности, установ­ленным на компьютере, браузер, прежде чем загружать и устанавливать объект ActiveX, должен запрашивать пользователя, то, когда дескриптор <embed> потре­бует объекта ActiveX, еще не установленного на компьютере, браузер выведет ди­алоговое окно Security Warning (Предупреждение о безопасности), аналогичное по­казанному на рис. 9.4.

В диалоговом окне предупреждения о безопасности можно просмотреть ин­формацию о сертификатах, щелкнув на имени издателя. Ваш браузер, в свою очередь, выведет на экран диалоговое окно Certificate (Сертификат), в котором можно просмотреть подробности об организации-разработчике (см. рис. 9.12).

Рис.9.12. Просмотр подробностей о сертификате объекта

Чтобы предоставить пользователям максимум возможностей в области конт­роля за безопасностью, Windows присваивает элементам управления ActiveX два уровня безопасности: безопасный для инициализации (safe to initialize) и безопасный для написания сценариев (safefor scripting). Указывая, что элемент управления бе­зопасен для инициализации, программист заявляет, что элемент управления не будет вести себя некорректно (что значит, что объект будет работать правильно, и сценарий не может привести к отказу кода или выполнению кодом злоумыш­ленной операции), вне зависимости от начальных значений, которые могут быть присвоены пользователем элементу управления с помощью дескрипторов <param>. Если Internet Explorer обнаруживает внутри HTML-страницы элемент управления ActiveX, не являющийся безопасным для инициализации, и если дескриптор <object> содержит один или несколько дескрипторов <param> для инициализации объекта, Internet Explorer может, в зависимости от установлен­ных параметров безопасности, отобразить диалоговое окно, предупреждающее вас о потенциальном нарушении безопасности.

Когда же программист помечает объект управления ActiveX как безопасный для сценариев, программист заявляет, что элемент управления будет вести себя надлежащим образом, вне зависимости от того, как сценарий будет манипулиро­вать элементом управления. Опять-таки, обнаружив внутри HTML-страницы эле­мент управления ActiveX, не помеченный как безопасный для сценариев, Internet Explorer может, в зависимости от установленных параметров безопасности, ото­бразить диалоговое окно с предупреждением о потенциальном нарушении безо­пасности.

Настройка параметров безопасности Java и ActiveX

Чтобы не допустить загрузки вашим браузером Java-аплетов и объектов ActiveX без вашего ведома и разрешения, Windows позволяет установить парамет­ры, диктующие, как браузер должен обращаться с аплетами и объектами. С по­мощью параметров безопасности, например, можно дать браузеру указание выг­ружать и устанавливать подписанные объекты автоматически, но запрашивать вас, прежде чем выгружать неподписанные объекты.

Чтобы воспользоваться пара­метрами безопасности Windows для контроля за Java-аплетами и объектами ActiveX, выполните следующее действия:

1.  Выберите опцию Settings (Настройка) в меню Start (Пуск) и затем Control Panel (Панель управления). Windows откроет окно панели управления.

2.  В панели управления сделайте двойной щелчок на пиктограмме Internet Options (Свойства обозревателя). Windows выведет на экран диалоговое окно Internet Properties (Свойства: Интернет).

3.  В диалоговом окне Internet Properties перейдите на вкладку Security (Безо­пасность). Windows отобразит окно Security (Безопасность).

4.  В окне Security щелкните на кнопке Custom Level (Другой...). Windows выве­дет на экран диалоговое окно Security Settings (Правила безопасности), по­казанное на рис. 9.13.

5.  В диалоговом окне Security Settings с помощью переключателей установите требуемые уровни безопасности и щелкните на кнопке ОК, чтобы вернуть­ся в диалоговое окно Internet Options. Затем щелкните на кнопке ОК в диа­логовом окне Internet Options, чтобы закрыть диалоговое окно.

Примечание. Открыть диалоговое окно Internet Options (Свойства обозревателя) можно и находясь в самом браузере Internet Explorer, выбрав в меню Tools (Сервис) пункт Internet Options (Свойства обозревателя).

Рис. 9.13. Настройка безопасности Java и ActiveX в диалоговом окне правил безопасности

Создание всплывающего навигационного меню с помощью аплета

По мере увеличения количества Web-страниц на вашем сайте необходимо уве­личивать и число пунктов в навигационном меню. Как-никак, вы хотите дать посетителям возможность "перескакивать" на те или иные страницы, не застав­ляя их сперва пролистывать несколько других страниц. К сожалению, увеличение количества гипертекстовых ссылок на вашем навигационном меню означает так­ же увеличение размеров меню, из-за чего часто приходится разбивать содержи­мое на две страницы. PopupNavigator.class — аплет, написанный Бранко Димитриевичем (Branco Dimitrijevic) — это решение, позволяющее представить навигационную панель в виде иерархического меню. Чтобы сэкономить про­странство, аплет появляется на экране в виде кнопки, которая по щелчку на ней выводит на экран меню, "всплывающее" над содержимым Web-страницы, как можно видеть на рис. 9.14._____________________________________________

Рис. 9.14. Аплет PopupNavigator после щелчка на нем кнопкой мыши

Когда пользователь щелкает на кнопке, браузер запускает аплет, который вы­водит на экран всплывающее меню. Внутри меню пользователь просто щелкает на выбранном пункте. Аплет затем извлекает и отображает HTML-документ, связанный с пунктом, который выбрал посетитель. Web-страница, соответствующая пункту меню, может находиться на текущем Web-сайте или же на другом сайте. Если посетитель наводит курсор мыши на пункт меню со стрелкой вправо (как пункт Аплеты на рис. 9.14), аплет отобразит подменю, состоящее из дополни­тельных пунктов.

ПРАКТИКУМ

Выгрузить аплет PopupNavigator.class вместе с его исходным кодом можно из сайта издателя русскоязычной редакции этой книги. Скопировав архив PopupNavigator.zip в папку на своем компьютере, извлеките из него файлы .class (Java-аплет), .gif (изображение) и .jar (Java-архив). Чтобы использовать всплывающее навигационное меню на своей Web-странице, скопируйте все фай­лы .gif и либо файл .jar, либо все файлы .class в туже папку, где находится Web-страница. Затем вставьте приведенные ниже строки в код страницы, туда, где должна будет находиться кнопка всплывающего меню:

<applet align = "center" width = "210" height = "24"

code = "PopupNavigator/PopupNavigatorApplet. class"

archive = "PopupNavigator. jar">

<param name = "Label"

value = "HTML & Web Design;Arial;BOLDITALIC;16;RED;">

<param name = "Image" value = "down arrow1.gif">

<param name = "ImagePosition" value = "LEFT;4">

<param name = "0" value = "NVBizNet;http://www. ">

<param name = "l" value = "Рисунки;ListOfFigures. htm">

<param name = "2" value ="Аплеты;">

<param name = "2;0" value = "JavaClock;Chpt09Tipl. htm">

<param name = "2;l" value = "PopupNavigator;ChptO9Tip2.htm">

Примечание. PopupNavigator.jar - это файл Java-архива, содержащий все .class-файлы аплета в сжатом формате. Для снижения продолжительности загрузки следует пользоваться .jar-файлом, если таковой доступен. Аплет будет функционировать одинако­во вне зависимости оттого, используются .class-файлы или .jar-файл. Для подключения .jar-файла необходимо добавить в дескриптор <applet> атрибут archive и указать в нем имя файла Java-архива. При отсутствии атрибута archive начальный дескриптор <applet> дает Web-браузеру указание загружать .class-файлы аплета.

Параметры, используемые для настройки всплывающего меню, описаны ниже.

label

Разделенная точками с запятыми (;) строка с надписью, которая будет помещена на кнопку, и описанием того, как должны выглядеть над­пись и сама кнопка. Синтаксис строки значений надписи выглядит так: "<надпись>;<шрифт>;<стиль шрифта>;<размер шрифта>;<цвет текста надписи> и <цвет кнопки>". Если вы вовсе опустите параметр надписи, ап­лет выведет в качестве текста надписи кнопки слово "Navigate". Вы также можете использовать значения, установленные в браузере по умолчанию, для <шрифта>, <стиля шрифта> и <размера>, опустив эти значения из строки значений. Задавая цвет кнопки или текста подписи, используйте либо название цвета Netscape Navigator, либо выражайте цвет в виде трип­лета десятичных чисел (с пробелами между числами), соответствующих RGB-составляющим цвета. Если вы опустите <цвет текста подписи> или <цвет кнопки>, аплет выведет черный текст на серой кнопке.

image

Имя пути (URL-адрес) изображения, которое должно выводиться на кнопке. Если вы хотите, чтобы на кнопке была только текстовая над­пись, опустите параметр image. Например, приведенный выше код поме­щает на кнопку подпись "HTML & web Design" путем установки значения параметра label равным: "HTML & Web Design;Arial;BOLDITALIC;16;RED;"

imageposition

Месторасположение изображения (заданного параметром image) относительно краев кнопки. К возможным значениям относятся:

CENTER - Отцентрировать изображение на кнопке.

LEFT, RIGHT, TOP, BUTTOM - Расположить изображение относительно середины левого, правого, верхнего или нижнего края кнопки. Например, value = "left;4" дает аплету указание расположить изображение на рассто­янии 4 пикселей (по направлению к центру кнопки) от левого края кноп­ки.

ABSOLUTE - Расположить изображение в определенной точке координат или внутри кнопки. Например, value = "ABSOLUTE;24,16" дает аплету указание расположить изображение в точке координат 24 (х), 16 (у) относительно верхнего левого угла кнопки.

<пункт меню>

Дескриптор <param> для каждого пункта меню имеет атрибут name, состоящий из разделенного точками с запятыми (;) набора це­лочисленных координат. Атрибут value дескриптора параметра состоит из текста пункта, после которого ставится точка с запятой и затем URL-адрес Web-страницы, которую аплет должен вывести, когда посетитель выберет данный пункт меню.

ПРАКТИКУМ

Хотя меню в примере в начале данного практикума имеет только два уровня, мож­но создать иерархическое меню, содержащее сколько угодно подменю - что зна­чит, что подменю могут иметь подменю, которые, в свою очередь, могут иметь подменю, и так далее. Например, чтобы добавить два уровня подменю к пункту Рисунки из предыдущего примера, необходимо изменить объявления параметров следующим образом:

<param name = "0" value = "NVBizNet;http://www. ">

<param name = "1" value = "Рисунки;">

<param name = "2" value = "Аплеты;">

<param name = "1;O" value = "Глава_1;">

<param name = "l;l" value="Глава_2;">

<param name = "l;0;0" value = "Глава_1;Рисунок_1;Fig1-1.htm">

<param name = "l;0;l" value = "Глава_1;Рисунок_2;Fig1-2.htm">

<param name = "l;l;0" value = "Глава_2;Рисунок_l;Fig2-l. htm">

<param name = "l;l;l" value = "Глава_2;Рисунок_2;Fig2-2.htm">

<param name = "2;0" value = "JavaClock;Chpt09Tipl. htm">

<param name = "2;l" value = "PopupNavigator;ChptO9Tip2.htm">

Обратите внимание, что пункты меню, которые, будучи выбранными, раскры­вают подменю (например, "Рисунки" и "Аплеты"), имеют только текст меню и не имеют URL-адреса. И наоборот, пункты меню, не имеющие подменю (такие как "NVBizNet", "Глава 1; Рисунок 1", "Глава 2; Рисунок 2") имеют и текст, кото­рый браузер должен вывести как пункт подменю, и URL-адрес Web-страницы, извлечь которую аплет должен поручить браузеру.

Анимация строки текста с помощью аплета

Если вы хотите привлечь внимание посетителя к баннеру или абзацу текста — выполните их анимацию. Поскольку символы в строке обычно остаются неиз­менными, анимированный текст (то есть текст, который изменяется) привлекает внимание: Один из способов реализовать анимацию текста - это создать бегу­щую строку, чтобы текст "перебегал" через экран. Другой способ — воспользо­ваться таким аплетом, как AnimText.class, который непрерывно изменяет раз­мер каждого из символов в неподвижной строке.

ПРАКТИКУМ

Аплет AnimText.class вместе с исходным кодом доступен на сайте издателя русскоязычной редакции этой книги. Скопировав архив AnimText.zip в папку на своем компьютере, извлеките из него AnimText.class. Чтобы использовать аплет на своей Web-странице, скопируйте .class-файл аплета (AnimText.class) в ту же папку, где находится Web-страница. Затем вставьте показанные ниже строки в HTML-код страницы, туда, где должен находиться анимированный текст:

<applet code = "AnimText. class" width = "575" height = "65">

<param name = "text" value = "HTML & Web Design">

<param name = "font" value = "TimesNewRoman">

<param name = "style" value = "PLAIN">

<param name = "fgcolor" value = "blue">

<param name = "bgcolor" value = "255:255:255">

<param name = "type" value = "wave">

<param name = "min" value = "14">

<param name = "max" value = "48">

<param name = "align" value = "center">

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4