double arrow

Понятие о внедренных элементах

В главе 1 говорилось, что изначально Всемирная Паутина WWW была исключительно текстовой. А это значит, что язык HTML, на котором пишутся Web-страницы, имел средства для вывода только текстовой информации. Ни таблиц, ни рисунков, ни тем более звуков и фильмов тогдашние Web-странички не содержали. Только текст, текст и еще раз текст.

Когда Интернет "пошел в народ", разработчикам языка HTML срочно потребовалось снабдить его поддержкой графики. Они решили проблему, придумав тег <IMG>, в атрибуте SRC которого указывался интернет-адрес файла, содержащего изображение. Вот так выглядит соответствующий код:

<IMG SRC="logo.jpg">

Прочитав этот тег, Web-обозреватель получает от Web-cepeepa файл logo.jpg и выводит его содержимое на экран.

Однако изображение, которое помещаем мы на Web-страницу с помощью тега <IMG>, выглядит явно чужеродным по отношению к изначально "текстовому" HTML. Такие элементы-"чужаки", хранящиеся в отдельных от самой Web-страницы файлах, называются внедренными элементами.

Точно такими же внедренными элементами являются и фильмы в формате AVI, и звуки в формате WAV, и графика Flash, помещаемые на Web-страницах. Только в их случае используются другие теги: <OBJECT> и <EMBED>. Сейчас мы их рассмотрим.

Теги <OBJECT> и <EMBED>

Собственно, оба тега — и <OBJECT>, и <EMBED> — выполняют одну и ту же задачу. Они задают местоположение внедренного элемента на Web-странице и интернет-адрес файла, содержащего данные, необходимые для отображения этого элемента. Различие их состоит лишь в том, что тег <EMBED> объявлен устаревшим и не рекомендован к использованию, а вместо него рекомендуется использовать тег <OBJECT>. Но давайте обо всем по порядку…

Тег <OBJECT>

Парный тег <OBJECT>, в общем случае, служит для помещения на Web-страницу компонента ActiveX. В том числе с его помощью можно поместить на Web-страницу встраиваемый проигрыватель Flash, оформленный в виде компонента ActiveX, и загрузить в него нужный файл Shockwave/Flash. (Как мы помним из главы /, встраиваемый проигрыватель Flash работает совместно с Web-обозревателем.) Также с помощью этого тега можно поместить на Web-страницу проигрыватели Windows Media и QuickTime и загрузить в них фильмы в форматах AVI и QuickTime, звуки в форматах WAV и MIDI и пр.

Вот пример использования тега <OBJECT> для помещения на Web-страницу проигрывателя Flash, в котором должен воспроизводиться фильм movie.swf:

<OBJECT CLASSID="clsid:d27cdb6e-ae6d-llcf-96b8-444553540000" WIDTH="100" S>HEIGHT="100" CODEBASE="https://fpdownload.macromedia.com/pub/shockwave/ S>cabs/flash/swflash.cab#version=8,0,0,0">

<PARAM NAME="MOVIE" VALUE="movie.swf">

<PARAM NAME="PLAY" VALUE="true">

<PARAM NAME="LOOP" VALUE="true">

<PARAM NAME="QUALITY" VALUE="high">

</OBJECT>

Видно, что внутри тега <OBJECT> помещается набор тегов <PARAM>, с помощью которых задаются различные параметры самого проигрывателя Flash, оформленного в виде компонента ActiveX. Каждому такому параметру соответствует свой тег <PARAM>; имя параметра задается атрибутом name, а значение — атрибутом VALUE.

Давайте посмотрим на приведенный выше HTML-код. Здесь мы поместили на Web-страницу проигрыватель Flash, задали файл Shockwave/Flash (параметр "MOVIE"), заставили его воспроизвестись сразу же после загрузки (параметр "PLAY") и зациклили (параметр "LOOP"). Напоследок мы задали качества вывода графики (параметр "QUALITY"). Как видите, все параметры имеют "говорящие" имена, так что сразу ясно, какой параметр за что "отвечает".

Тег <ОВJECT> содержит довольно много атрибутов. С их помощью задаются, в частности, размеры внедренного компонента ActiveX на Web-странице (атрибуты WIDTH и HEIGHT) и интернет-адрес его дистрибутива (атрибут CODEBASE). Таким образом, если нужный компонент на клиентском компьютере не установлен, Web-обозреватель сможет самостоятельно загрузить и установить его.

Тег <ОВJECT> поддерживается Web-обозревателями Microsoft Internet Explorer, начиная с версии 3.0, и Netscape Navigator версии не старше 4.0. Также он поддерживается всеми программами, появившимися в последнее время: Opera, Mozilla, Firefox и Apple Safari.

Тег <ОВJECT> стандартизирован и рекомендован к использованию комитетом W3C. Предполагается, что со временем он заменит собой все остальные теги, предназначенные для помещения на Web-страницы внедренных элементов, в том числе и тег <IMG>.

Тег <EMBED>

Парный тег <EMBED>, в общем случае, служит для помещения на Web-страницу модуля расширения Web-обозревателя. В том числе с его помощью можно поместить на Web-страницу встраиваемый проигрыватель Flash, оформленный в виде модуля расширения, и загрузить в него нужный файл Shockwave/Flash. Вот пример тега <EMBED>, который это делает:

<EMBED SRC="movie.swf" WIDTH="100" HEIGHT="100" PLAY="true" LOOP="true" QUALITY="high" PLUGINSPAGE="https://www.Macromedia.com/go/getflashplayer">

</EMBED>

В отличие от тега <OBJECT>, здесь все необходимые параметры задаются в атрибутах самого тега <EMBED>. В них указываются размеры внедренного модуля на Web-странице (атрибуты WIDTH и HEIGHT), имя файла Shockwave/Flash (атрибут SRC), путь к дистрибутиву модуля расширения (атрибут PLUGINSPAGE) и качество воспроизведения (атрибут QUALITY). Никакие дополнительные теги в этом случае не нужны.

Тег <EMBED> начал поддерживаться Web-обозревателями Microsoft Internet Explorer версии 3.0 и Netscape Navigator 2.0. Хотя он в настоящее время не рекомендован к использованию комитетом W3C, но поддерживается до сих пор. Однако во всех вновь создаваемых Web-страницах рекомендуется использовать тег <OBJECT>.

Совместное использование тегов <OBJECT> и <EMBED>

На практике для решения проблем совместимости разных программ Web-обозревателей теги <OBJECT> и <EMBED> используются совместно. Например, вот так:

<OBJECT CLASSID="clsid:d27cdb6e-ae6d-llcf-96b8-444553540000" WIDTH="100"HEIGHT="100"CODEBASE="https://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0">

<PARAM NAME="M0VIE" VALUE="movie.swf">

<PARAM NAME="PLAY" VALUE="true">

<PARAM NAME="L00P" VALUE="true">

<PARAM NAME="QUALITY" VALUE="high">

<EMBED SRC="movie.swf" WIDTH="100" HEIGHT="100" PLAY="true" L00P="true" QUALITY="high" PLUGINSPAGE="https://www.macromedia.com/go/getflashplayer">

</EMBED>

</OBJECT>

Видно, что в этом случае тег <EMBED> вложен внутрь тега <OBJECT> вместе с набором тегов <PARAM>. Что же происходит, если клиент пытается просмотреть Web-страницу, содержащую такой код? Давайте рассмотрим эту ситуацию для разных Web-обозревателей.

Если клиент использует современный Web-обозреватель, а именно, Microsoft Internet Explorer 3.0 или Netscape Navigator 4.0 (или более новые их версии), происходит следующее. Web-обозреватель считывает тег <OBJECT>, затем — теги <PARAM>, загружает компонент ActiveX, файл фильма и выводит его на экран. Тег <EMBED>, вложенный внутрь тега <OBJECT>, в этом случае игнорируется.

Если же клиент использует более старые версии программ Web-обозревателей, все происходит по-другому. Так как теги <OBJECT> и <PARAM> неизвестны этим программам, они их игнорируют — это стандартное поведение Web-обозревателя, встретившего незнакомый тег. В этом случае обрабатывается тег <EMBED>.

На заметку

Возможен, правда, и третий вариант. Клиент может использовать Microsoft Internet Explorer 2.0 — первую версию Web-обозревателя фирмы Microsoft, не поддерживающую ни тег <OBJECT>, ни тег <EMBED>. Но вряд ли сейчас кто-то еще пользуется этой курьезной программой, так что ее не стоит принимать в расчет.

Параметры встраиваемого проигрывателя Flash

Встраиваемый проигрыватель Flash поддерживает довольно много параметров. В случае тега <OBJECT> одни параметры задаются как одноименный атрибут этого тега, а другие — с помощью тега <PARAM>. В случае тега <EMBED> все параметры задаются через его атрибуты.

Внимание!

Значения всех описанных ниже параметров задаются в строковом виде.

Параметр ALLOWSCRIPTACCESS разрешает или запрещает фильму Flash взаимодействовать с Web-страницей с помощью действия FSCommand (его описание можно найти в интерактивной справке Flash). Может принимать три значения:

□ "always" — взаимодействие разрешено в любом случае;

□ "never" — взаимодействие запрещено в любом случае;

□ "samedomain" — взаимодействие разрешено только в том случае, если и Web-страница, и фильм Flash загружены с одного и того же Web-сервера. Это значение по умолчанию.

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Параметр ALIGN задает способ выравнивания "окна" проигрывателя Flash на Web-странице. Может принимать одно из пяти значений:

□ "Default" — выравнивание по центру Web-страницы;

□ "L" — выравнивание по левой границе Web-страницы;

□ "Т" — выравнивание по верхней границе Web-страницы;

□ "R" — выравнивание по правой границе Web-страницы;

□ "В" — выравнивание по нижней границе Web-страницы.

Если окно Web-обозревателя меньше, чем размеры изображения Shockwave/ Flash, оно будет обрезано.

Поддерживается тегами <OBJECT> и <EMBED>. Задается как одноименный атрибут этих тегов.

Необязательный параметр BASE задает базовый интернет-адрес, используемый как точка для отсчета всех относительных интернет-адресов, присутствующих в гиперссылках. Поддерживается тегами <OBJECT> и <EMBED>. Задается как одноименный атрибут этих тегов.

Необязательный параметр BGCOLOR определяет цвет фона фильма в формате 0xRRGGBB. Перекрывает значение цвета фона, заданное в среде Flash. Если не указан, используется изначальный цвет фона фильма Flash.

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Параметр CLASSID определяет идентификатор компонента ActiveX. В случае проигрывателя Flash должен иметь значение:

"clsid:d27cdb6e-ae6d-llcf-96b8-4 4 455354 0000"

Поддерживается только тегом <OBJECT> и задается через его одноименный атрибут.

Параметр CODEBASE определяет интернет-адрес дистрибутива компонента ActiveX. В случае проигрывателя Flash 8 должен иметь значение:

"https://fpdownload.macromedia.сот/pub/Shockwave/cabs/flash/swflash.cab# S>version=8, 0, 0, 0"

Поддерживается только тегом <OBJECT> и задается через его одноименный атрибут.

Необязательный параметр DEVICEFONTS разрешает или запрещает проигрывателю Flash использовать для отображения текста шрифты-псевдонимы вместо шрифтов, не установленных на клиентском компьютере. (О шрифтах-псевдонимах было рассказано в главе 7.) Может принимать одно из двух значений:

□ "true" — подстановка разрешена;

□ "false" — подстановка запрещена (значение по умолчанию).

Нужно только иметь в виду, что такая подстановка работает лишь в статичных текстовых блоках.

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Параметр HEIGHT определяет высоту "окна" проигрывателя Flash в пикселах или процентах от высоты окна Web-обозревателя. Формат использования:

HEIGHT="<Высота в пикселах>\<Процент от высоты окна>%"

Поддерживается тегами <OBJECT> и <EMBED>. Задается как одноименный атрибут этих тегов.

Необязательный параметр ID задает имя данного компонента ActiveX, в нашем случае — проигрывателя Flash. Через это имя можно впоследствии получить доступ к проигрывателю из Web-сценариев.

Поддерживается только тегом <OBJECT> и задается с помощью одноименного атрибута. В случае тега <EMBED> нужно использовать параметр name, который будет описан ниже.

Необязательный параметр LOOP позволяет зациклить фильм, для чего ему нужно присвоить значение "true". Если же ему присвоить значение "false", воспроизведение фильма остановится после его завершения. Значение по умолчанию — "true".

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Необязательный параметр MENU разрешает или запрещает проигрывателю Flash выводить контекстное меню при щелчке правой кнопкой мыши. Может принимать одно из двух значений:

□ "true" — при щелчке правой кнопкой мыши выводится полноразмерное контекстное меню;

□ "false" — контекстное меню будет содержать только пункт About Flash Player.

Значение по умолчанию — "true".

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Параметр movie задает интернет-адрес файла Shockwave/Flash, который должен быть загружен в проигрыватель Flash. Поддерживается только тегом <ОВJECT> и задается с помощью тега <PARAM>. В случае тега <EMBED> нужно использовать параметр SRC, описанный далее в этой главе.

Необязательный параметр NAME определяет имя модуля расширения, в нашем случае — проигрывателя Flash. Через это имя можно впоследствии получить доступ к проигрывателю из Web-сценариев.

Поддерживается только тегом <EMBED> и задается с помощью одноименного атрибута. В случае тега <OBJECT> нужно использовать параметр ID, описанный ранее.

Необязательный параметр PLAY управляет воспроизведением фильма после загрузки. Если он равен "true", то фильм сразу же после загрузки будет запущен на воспроизведение. Если же он равен "false", то фильм не будет воспроизведен после загрузки, и пользователю придется сделать это самостоятельно. Значение по умолчанию — "true".

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Параметр PLUGINSPAGE задает интернет-адрес Web-страницы, содержащей ссылку на дистрибутив модуля расширения. В случае проигрывателя Flash 8 должен иметь значение:

"https://www.macromedia.сот/go/getflashplayer"

Поддерживается только тегом <EMBED> и задается через одноименный атрибут этого тега.

Необязательный параметр QUALITY устанавливает качество отображения графики Flash. Может принимать одно из шести значений:

□ "low" — скорость воспроизведения имеет приоритет перед качеством графики, сглаживание не используется. Самое низкое качество;

□ "autoiow" — изначально качество графики низкое, сглаживание не используется. Далее, если компьютер окажется достаточно мощным, проигрыватель Flash повысит качество графики и включит сглаживание;

□ "autohigh" — изначально качество графики высокое, используется сглаживание. Далее, если компьютер окажется недостаточно мощным, проигрыватель Flash понизит качество графики и отключит сглаживание;

□ "medium" — используется сглаживание для векторной, но не для растровой графики. Среднее качество;

□ "high" — качество графики имеет приоритет над скоростью воспроизведения; используется сглаживание векторной, а если нет анимации, то и растровой графики;

□ "best" — используется сглаживание и векторной, и растровой графики. Самое высокое качество, которое не уменьшается ни в каких случаях.

Значение по умолчанию — "high".

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Необязательный параметр SALIGN задает выравнивание фильма в "окне" проигрывателя Flash. Может принимать одно из восьми значений:

□ "L" — выравнивание no левому краю:

□ "T" — выравнивание по верхнему краю;

□ "R" — выравнивание по правому краю:

□ "B" — выравнивание по нижнему краю:

□ "TL" — выравнивание но верхнему и левому краю;

□ "TR" — выравнивание но верхнему и правому краю:

□ "BR" — выравнивание но нижнему и правому краю:

□ "BL" — выравнивание но нижнему и левому краю

Если значение этого параметра не задано, фильм располагается в центре "окна" проигрывателя Flash.

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Необязательный параметр SCALE определяет параметры масштабирования фильма. Может принимать одно из трех значений:

□ "showall" — изображение будет выведено на экран целиком, для чего может быть применено масштабирование. Однако пропорции изображения искажены не будут, и в результате этого вдоль горизонтальных или вертикальных сторон его могут появиться пустые области;

□ "noborder" — то же самое, что "showall", но пустые области появляться не будут — Flash обрежет изображение по горизонтали или вертикали, чтобы их избежать;

□ "exactfit" — изображение будет выведено на экран целиком, для чего может быть применено масштабирование, в результате которого могут исказиться размеры изображения.

Значение по умолчанию — "showall".

Этот параметр имеет смысл использовать только тогда, когда значения параметров HEIGHT и WIDTH заданы в процентах от размера окна Web-обозревателя.

В случае тега <OBJECT> значение этого параметра задается с помощью тега <PARAM>, в случае тега <EMBED> — в одноименном атрибуте.

Необязательный параметр SEAMLESSTABBING управляет порядком обхода элементов управления, если таковые присутствуют в фильме Flash. Если его значение равно "true", пользователь имеет возможность "выйти" за пределы фильма Flash, пользуясь клавишами <Таb> и <Shift>+<Tab>. Значение "false" запрещает "выход" за пределы фильма. Значение по умолчанию — "true". Поддерживается только тегом <OBJECT> и задается с помощью тега <PARAM>.

Параметр SRC задает интернет-адрес файла Shockwave/Flash, который должен быть загружен в проигрыватель Flash. Поддерживается только тегом <EMBED> и задается через одноименный атрибут этого тега. В случае тега <OBJECT> нужно использовать описанный ранее параметр MOVIE.

Необязательный параметр SWLIVECONNECT определяет, должен ли Web-обозреватель загружать исполняющую подсистему JavaScript. Если его значение равно "false", подсистема JavaScript не загружается, когда фильм Flash запускается на воспроизведение. Если оно равно "true", подсистема JavaScript загружается. Значение по умолчанию — "false".

Этот параметр можно использовать в целях экономии памяти клиентского компьютера, выгрузив подсистему JavaScript. Однако если в сценариях фильма используется действие FSCommand (его описание приведено в интерактивной справке Flash), следует установить значение этого параметра, равным "true".

Поддерживается только тегом <EMBED> и задается через одноименный атрибут этого тега.

Параметр WIDTH задает ширину "окна" проигрывателя Flash в пикселах или процентах от ширины окна Web-обозревателя. Формат использования:

WIDTH="<Ширина в пикселах>\<Процент от ширины окна>%"

Поддерживается тегами <OBJECT> и <EMBED>. Задается как одноименный атрибут этих тегов.

Необязательный параметр WMODE задает вид "окна" проигрывателя на Web-странице. Может принимать одно из трех значений:

□ "Window" — фильм отображается на Web-странице в собственном "окошке". Самая высокая скорость воспроизведения;

□ "Opaque" — фильм не будет отображаться в собственном "окошке". Элементы, находящиеся на Web-странице "ниже" этого фильма, не будут видны, но элементы, находящиеся "выше" его, видны будут;

□ "Transparent" — фильм не будет отображаться в собственном "окошке". Элементы, находящиеся на Web-странице "выше" и "ниже" этого фильма, будут видны. Качество вывода анимации при этом может ухудшиться.

Значение по умолчанию — "window".

Поддерживается только тегом <OBJECT> и задается с помощью тега <PARAM>.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



Сейчас читают про: