
Поддержка сайта
Продвижение сайтов
Создание сайтов
Flash-анимация без встраивания тегов для действительного XHTML
В этом руководстве по SEO-оптимизации показано, как преобразовать веб-страницу, отображающую flash-анимацию в формате SWF, в действительный код XHTML.
В примере предполагается, что флэш-память расположена в каталоге /flash/2009.swf и имеет размеры 294 ширины и 260 высоты поля анимации.
Если код был написан очень давно, вероятно, он будет выглядеть так:
lt; идентификатор класса объекта ="clsid: D27CDB6E-AE6D-11cf-96B8-444553540000" кодовая база ="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" ширина ="294" высота ="260"gt; lt; param name ="фильм" значение ="http://arthuradams.bg/flash/2009.swf"gt; lt; param name ="качество" значение ="высоко"gt; lt; param name ="wmode" значение ="непрозрачный"gt; lt; вставлять src ="http://arthuradams.bg/flash/2009.swf" wmode ="непрозрачный" качество ="высоко" pluginspage ="http://www.macromedia.com/go/getflashplayer" type ="приложение / x-shockwave-flash" ширина ="294" высота ="260"gt; lt; / objectgt;
Этот код недействителен XHTML из-за тега embed, и при попытке пройти через валидатор выдает ошибки, первая из которых выглядит следующим образом:
Строка 181, столбец 17:
Атрибут src существует, но не может использоваться для этого элемента.
lt; вставлять src = «http://arthuradams.bg/flash/2009.swf» wmode = «opaque» quality = «h …
Когда вы ищете в Google такие слова, как «XHTML embed», появляются десятки статей, в которых неправильно указано, что приведенный выше код можно заменить чем-то вроде:
lt ;! -&# 91; если! IE&# 93; gt; —gt; lt; тип объекта ="приложение / x-shockwave-flash" данные ="http://arthuradams.bg/flash/2009.swf" ширина ="294" высота ="260"gt; lt ;! — lt;!&# 91; endif&# 93; — gt; lt ;! -&# 91; если IE&# 93; gt; lt; идентификатор класса объекта ="clsid: D27CDB6E-AE6D-11cf-96B8-444553540000" кодовая база ="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,0,0" ширина ="294" высота ="260"gt; lt; param name ="фильм" значение ="http://arthuradams.bg/flash/2009.swf" / gt; lt ;! — gt; lt ;! — dgx — gt; lt; имя параметра ="петля" значение ="правда"gt; lt; param name ="меню" значение ="ложный"gt; Это lt; bgt; alternatelt; / bgt; content.lt; / objectgt; lt ;! — lt;!&# 91; endif&# 93; — gt;
Приведенный выше код неверен и НЕ РАБОТАЕТ!
На мой взгляд, единственное решение XHTML, которое работает во всех браузерах, — это использование JavaScript.
Пример использования swfobject.
Загрузите файл https://ganbox.com/inc/swfobject.js и загрузите его на свой сайт. В следующем примере предполагается, что он находится в каталоге / jscripts
Между тегами голову ставим порядок
lt; тип скрипта ="текст / javascript" src ="/jscripts/swfobject.js"gt; lt; / scriptgt;
Там, где вы хотите, чтобы появился флэш-ролик, поместите следующий div:
lt; div id ="flashcontent" style ="плыть налево; маржа: 10 пикселей"gt; lt; stronggt; Вам необходимо обновить Flash Playerlt; / stronggt; lt; / divgt;
Сладкий это на странице выполнил скрипт
lt; тип скрипта ="текст / javascript"gt; // lt;!&# 91; CDATA&# 91; var so = новый SWFObject ("http://arthuradams.bg/flash/2009.swf",, "заглавие",, "294",, "260",, "7",, "# FF6600"); so.write (COM)"flashcontent"); // &# 93;&# 93; gt; lt; / scriptgt;
Конечно, вместо arthuradams.bg напишите на своем сайте доменное имя. Это должно происходить только с «/flash/2009.swf».
На странице обучения с ArthurAdams.bg есть рабочий пример, который является действительным XHTML.
В статье используется код проекта swfobject.